我單擊單選按鈕時成功執行更改,但問題是,當我重新加載頁面時,單選按鈕選擇被保留,但更改不是。換句話說,如果我點擊單選按鈕#1,它將降低某些字段的不透明度。當我回到這個頁面時,所有的字段都是完全不透明的,直到我再次單擊單選按鈕,它纔會執行這個機會。jQuery輸入觸發器實時更改
這裏是我的代碼:
(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