最近写JS的时候发现有两个奇怪的问题
问题一:
代码如下:
格式一:
$(document).ready(function(){
$("button").click(togglexx());
});
function togglexx() {
$("p").toggle(1000);
}
////////////////////////////////////////
////////////////////////////////////////
格式二:
$(document).ready(function(){
$("button").click(function() {
$("p").toggle(1000);
});
});
格式一没有使用匿名涵数,发现加载页面后,所有的<p>就hide或者show,也就是说效果相当于直接点了button,使用格式二的时候,加载页面后,所有的<p>不会进行hide或者show,当点击button的时候才执行toggle方法,这是为什么?
******************************************************
******************************************************
问题二:
代码如下:
格式一:
$(document).ready(function(){
$("button").click(togglex());
});
function togglex() {
$("p").toggle(1000, function(){
$("button").click(togglex());
});
}
////////////////////////////////////////////
////////////////////////////////////////////
格式二:
$(document).ready(function(){
$("button").click(togglex());
});
function togglex() {
$("p").toggle(1000, togglex());
}
使用格式一可以出现想要的效果,但使用格式二的时候却没有出现想要的效果,就算点击button也没有反应,求助……
第一个问题,只要将格式一里改为如下:
$(document).ready(function(){
$("button").click(togglexx);
});
*******************************************
**************************************
第二个问题,代码修改如下:
$(document).ready(function(){
$("button").click(togglex);
});
function togglex() {
$("p").toggle(1000, togglex);
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。