Мне удастся выполнить изменение, когда я нажимаю на переключатель, но проблема в том, что при перезагрузке страницы выборы переключателя сохраняются, но изменения нет. Другими словами, если я нажму на кнопку # 1, это уменьшит непрозрачность определенных полей. Когда я вернусь на эту страницу, все поля имеют полную непрозрачность, и только после этого я снова нажимаю на переключатель, чтобы выполнить этот шанс.jQuery Вход Trigger Live Change
Вот мой код:
(function($) {
// Document Ready
$(document).ready(function() {
// trigger change on the radio list to show selected field
$('#acf-feature_slide ul.radio_list li label input').trigger('change');
});
// Content Type change
$('#acf-feature_slide ul.radio_list li label input').live('change', function() {
// vars
var value = $(this).val();
// show the selected field
if(value == "internal") {
$(this).parentsUntil('tr').find('div.row-layout-field').eq(3).css('opacity', '1.0');
$(this).parentsUntil('tr').find('div.row-layout-field').eq(4).css('opacity', '0.2');
}
else if(value == "external") {
$(this).parentsUntil('tr').find('div.row-layout-field').eq(3).css('opacity', '0.2');
$(this).parentsUntil('tr').find('div.row-layout-field').eq(4).css('opacity', '1.0');
}
else if(value == "none") {
$(this).parentsUntil('tr').find('div.row-layout-field').eq(3).css('opacity', '0.2');
$(this).parentsUntil('tr').find('div.row-layout-field').eq(4).css('opacity', '0.2');
}
else {
$(this).parentsUntil('tr').find('div.row-layout-field').eq(3).css('opacity', '1.0');
$(this).parentsUntil('tr').find('div.row-layout-field').eq(4).css('opacity', '1.0');
}
});
})(jQuery);
Любая помощь очень ценится.
Спасибо,
Рассмотрите возможность использования 'on', поскольку' live' стал устаревшим в jQuery v1.7. http://api.jquery.com/on/ – yoshi
В каком случае вы обновите страницу? Это «быстрое обновление» (обычная горячая клавиша «F5»), или вы также очищаете кэш вместе с ним ('shift + F5'). Во время разработки я рекомендую последний. – yoshi