它在第二次点击时完成工作,为什么
It does the job on second click, why?
我有一个切换功能。它应该在第一次单击时显示隐藏的div,并在第二次单击时隐藏它,依此类推......它有效,但是,当您首先单击时,没有任何反应。当您再次单击时,它会完成工作。(第一次点击时显示,第二次点击时隐藏等等...
目录
<div id="kesfetust">Click me</div>
<div id="sis">I'm a hidden div, and I should open on the first click,
and hidden on the second click.</div>
Jquery
$("#kesfetust").click(function() {
var clicks = $(this).data('clicks');
if (clicks) {
$("#sis").css({display: 'block'});
} else {
$("#sis").css({display: 'none'});
}
$(this).data("clicks", !clicks);
});
使其正常工作的正确方法是什么,我在哪里犯了错误?
您的div 最初没有隐藏,请使用 display:none
隐藏它:
<div id="sis" style="display:none">I'm a hidden div, and I should open on the first click,
and hidden on the second click.</div>
为什么不简单简短:
$("#kesfetust").click(function() {
$("#sis").toggle();
});
因为第一次点击时,div中没有data("clicks")
,所以clicks
会被undefined
,它会进入其他情况设置隐藏的sisdiv。
我建议你用jquery的方式做:
$("#kesfetust").click(function() {
$("#sis").toggle();
}
或者如果你坚持自己做:
$("#kesfetust").click(function() {
if($("#sis").is(":hidden"))
$("#sis").show();
else
$("#sis").hide();
}
相关文章:
- 为什么这在IE中的工作方式与在Firefox中不同
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- 有时 array.length 只在 .push() 之后工作(为什么?)
- Javascript don'刷新页面后无法工作-为什么
- Jquery简单脚本只能在本地工作.为什么?像Javascript翻译
- 可以't让jQuery循环插件工作为什么
- jQuery animate()不工作.为什么?
- window.onload没有'I don’我不能一直工作.为什么?
- Rails自动完成可以在父形式中工作,但不能在嵌套形式中工作.为什么
- LESS不能在IE11中工作-为什么
- ECMAScript的承诺.all方法与jQuery.Deferred一起工作.为什么
- 防止LinkButton post回OnClientClick不工作.为什么
- JavaScript toUpperCase不工作.为什么
- html5:帆布.getImageData不能正常工作-为什么
- javascript的内联样式更改不能在移动浏览器(chrome/dolphin/android)上工作:为什么?
- 为什么我的幻灯片不能工作?为什么我的照片消失了
- jQuery验证在服务器中不起作用!在本地工作.为什么?
- 单页导航无法正常工作.为什么
- AJAX: error(已弃用!)工作,而failed不工作.为什么
- d3选择器:可以在代码中工作,但不能在控制台中工作.为什么