从收音机切换 cookie 触发点击不起作用
Triggering click from radio toggle cookie not working
根据此堆栈溢出q/a中的建议,我正在尝试通过cookie触发点击。Cookie 正在设置为单选按钮选择。需要将切换的两个div 中的一个设置为隐藏。
问题:初始 if 语句未触发点击。
if($.cookie('light-or-dark')) {
$($.cookie('light-or-dark') + '-radio').attr('checked', true).trigger('click');
} else {
$('#theme-schemes-dark').hide();
};
// the toggle on radio button change function
$('[name=light-dark-radio]').change(function(){
$('#theme-schemes-light').toggle('medium');
$('#theme-schemes-dark').toggle('medium');
// set cookie on toggle state
$.cookie('light-or-dark', '#theme-schemes-' + this.value, {expires:365, path: '/'})
})
该 HTML:
<div class="selection-wrap">
<label>
<input type="radio" name="light-dark-radio" id="theme-schemes-light-radio" value="light" checked>
Light
</label>
<label>
<input type="radio" name="light-dark-radio" id="theme-schemes-dark-radio" value="dark">
Dark
</label>
</div>
<!-- first div -->
<div class="selection-wrap" id="theme-schemes-light">
<a class="theme-scheme-btn color-box bg-blue" id="defaultThemeScheme" href="#">Light 1</a>
<a class="theme-scheme-btn color-box bg-yellow" href="#">Light 2</a>
</div>
<!-- second div - hidden by default -->
<div class="selection-wrap" id="theme-schemes-dark" style="display: none">
<a class="theme-scheme-btn color-box dark-color-blue" href="#">Dark 1</a>
<a class="theme-scheme-btn color-box dark-color-yellow" href="#" >Dark 2</a>
</div>
小提琴更好地说明
非常需要洞察力。
试试这个,我更改了恢复div 的代码
if($.cookie('light-or-dark')) {
$($.cookie('light-or-dark') + '-radio').attr('checked', true);
$('#theme-schemes-light').hide();
$('#theme-schemes-dark').hide();
$($.cookie('light-or-dark')).show();
} else {
$('#theme-schemes-dark').hide();
};
$('[name=light-dark-radio]').change(function(){
$('#theme-schemes-light').toggle('medium');
$('#theme-schemes-dark').toggle('medium');
// set cookie on toggle state
$.cookie('light-or-dark', '#theme-schemes-' + this.value, {expires:365, path: '/'});
})
我似乎没有同样的问题。( http://jsfiddle.net/jaLQZ/3/)
$($.cookie('light-or-dark') + '-radio').click(function(){
alert( 'click' + this.value );
});
if($.cookie('light-or-dark')) {
$($.cookie('light-or-dark') + '-radio').attr('checked', true).trigger('click');
} else {
$('#theme-schemes-dark').hide();
};
$('[name=light-dark-radio]').change(function(){
$('#theme-schemes-light').toggle('medium');
$('#theme-schemes-dark').toggle('medium');
// set cookie on toggle state
$.cookie('light-or-dark', '#theme-schemes-' + this.value, {expires:365, path: '/'});
})
也许您正在使用不支持 cookie 插件的浏览器?
相关文章:
- 使用javascript从特定网站删除cookie不起作用
- 通过文件访问页面时Cookie不起作用://
- JQuery Cookie 不起作用
- 为什么这个JavaScript cookie不起作用
- 基础 6 显示打开页面加载,cookie 不起作用
- 当我重新访问该页面时,我的 cookie 不起作用
- 引导折叠 cookie 不起作用
- Laravel5 AJAX set cookie 不起作用
- jQuery cookie 根本不起作用
- 为什么我的cookie脚本不起作用
- 为什么设置document.cookie在Chrome中不起作用
- jQuery cookie CORS即使在设置了头并带有凭据的情况下也不起作用
- 在Android浏览器中禁用cookie不起作用
- Ionic Angular JS cookie 不起作用
- 为什么这个javascript cookie代码不起作用
- Javascript -检查页面加载时是否存在cookie对我来说不起作用
- 在javascript中删除cookie不起作用
- Internet Explorer: cookie的过期日期不起作用
- Cookie在安卓Webview的iframe中不起作用
- 添加到document.cookie不起作用