MDL-21403 removing ->asap() used for flicker-lessremoval of go button, no use .hiddenifjs class instead

This commit is contained in:
Petr Skoda
2010-01-26 09:32:21 +00:00
parent a62d5845ef
commit 2d65597b6c
8 changed files with 29 additions and 16 deletions
+1 -2
View File
@@ -325,10 +325,9 @@ if (!$moving && count($grade_edit_tree->categories) > 1) {
$select->id = 'menumoveafter';
$select->add_action('change', 'submit_bulk_move');
echo $OUTPUT->select($select);
echo '<div id="noscriptgradetreeform" style="display: inline;">
echo '<div id="noscriptgradetreeform" class="hiddenifjs">
<input type="submit" value="'.get_string('go').'" />
</div>';
echo $PAGE->requires->js_function_call('hide_item', Array('noscriptgradetreeform'))->asap();
}
echo '</div>';
+11 -6
View File
@@ -1183,12 +1183,6 @@ function close_window_reloading_opener() {
/**
* Used in a couple of modules to hide navigation areas when using AJAX
*/
function hide_item(itemid) {
var item = document.getElementById(itemid);
if (item) {
item.style.display = "none";
}
}
function show_item(itemid) {
var item = document.getElementById(itemid);
@@ -1437,3 +1431,14 @@ function frame_breakout(e, properties) {
function submitFormById(id) {
submit_form_by_id(null, {id: id});
}
/**
* Used in a couple of modules to hide navigation areas when using AJAX
*/
function hide_item(itemid) {
// use class='hiddenifjs' instead
var item = document.getElementById(itemid);
if (item) {
item.style.display = "none";
}
}
+5 -2
View File
@@ -1112,12 +1112,15 @@ class core_renderer extends renderer_base {
'disabled' => $form->button->disabled,
'id' => $form->button->id);
if ($form->jssubmitaction) {
$buttonattributes['class'] .= ' hiddenifjs';
}
$buttonoutput = html_writer::empty_tag('input', $buttonattributes);
// Hide the submit button if the button has a JS submit action
if ($form->jssubmitaction) {
$buttonoutput = html_writer::start_tag('div', array('id' => "noscript$form->id")) . $buttonoutput . html_writer::end_tag('div');
$this->page->requires->js_function_call('hide_item', array("noscript$form->id"));
$buttonoutput = html_writer::start_tag('div', array('id' => "noscript$form->id", 'class'=>'hiddenifjs')) . $buttonoutput . html_writer::end_tag('div');
}
}
+1 -2
View File
@@ -553,10 +553,9 @@ function choice_show_results($choice, $course, $cm, $allresponses, $forcepublish
$select->id = 'menuaction';
$select->add_action('change', 'submit_form_by_id', array('id' => 'attemptsform', 'selectid' => 'menuaction'));
echo $OUTPUT->select($select);
echo '<noscript id="noscriptmenuaction" style="display: inline;">';
echo '<noscript id="noscriptmenuaction" class="hiddenifjs">';
echo '<div>';
echo '<input type="submit" value="'.get_string('go').'" /></div></noscript>';
$PAGE->requires->js_function_call('hide_item', Array('noscriptmenuaction'));
echo '</td><td></td></tr>';
}
+1 -2
View File
@@ -209,10 +209,9 @@
$select->id = 'menuaction';
$select->add_action('change', 'submit_form_by_id', array('id' => 'attemptsform', 'selectid' => 'menuaction'));
echo $OUTPUT->select($select);
echo '<noscript id="noscriptmenuaction" style="display: inline;">';
echo '<noscript id="noscriptmenuaction" class="hiddenifjs">';
echo '<div>';
echo '<input type="submit" value="'.get_string('go').'" /></div></noscript>';
$PAGE->requires->js_function_call('hide_item', Array('noscriptmenuaction'));
echo '</form>';
} else {
echo $OUTPUT->table($table);
+5
View File
@@ -52,6 +52,11 @@ a.skip-block {
* General
**/
/* Block which is hidden if javascript enabled, prevents fickering visible when JS from footer used! */
.jsenabled .hiddenifjs {
display: none;
}
.clearer {
clear:both;
margin:0;
@@ -88,6 +88,10 @@ body {
margin-top:10%;
}
.jsenabled .hiddenifjs {
display: none;
}
/* .clearfix {display: inline-table;} */
/* Hides from IE-mac \*/
+1 -2
View File
@@ -986,9 +986,8 @@
$select->add_action('change', 'conditionalsubmit', array('formid' => 'participantsform'));
echo $OUTPUT->select($select);
echo '<input type="hidden" name="id" value="'.$course->id.'" />';
echo '<div id="noscriptparticipantsform" style="display: inline;">';
echo '<div id="noscriptparticipantsform" class="hiddenifjs">';
echo '<input type="submit" value="'.get_string('ok').'" /></div>';
$PAGE->requires->js_function_call('hide_item', Array('noscriptparticipantsform'));
echo '</div>';
echo '</div>';
echo '</form>';