Javascript 切换不';不能在jQuery中工作
我不知道为什么我的密码不起作用。。。我希望显示“+”符号,当我们点击该符号时,它将变为“-”,同时显示段落。当我们点击“-”号以返回初始状态时Javascript 切换不';不能在jQuery中工作,javascript,jquery,toggle,Javascript,Jquery,Toggle,我不知道为什么我的密码不起作用。。。我希望显示“+”符号,当我们点击该符号时,它将变为“-”,同时显示段落。当我们点击“-”号以返回初始状态时 $(文档).ready(函数(){ $(“#main”)。追加(“”); $(“#消息”).hide(); $(“#单击我”).toggle(函数(){ $(“#单击我”).attr(“src”https://webapps-cdn.esri.com/graphics/ui/minus-sign-10.png"); $(“#消息”).show(); }
$(文档).ready(函数(){
$(“#main”)。追加(“”);
$(“#消息”).hide();
$(“#单击我”).toggle(函数(){
$(“#单击我”).attr(“src”https://webapps-cdn.esri.com/graphics/ui/minus-sign-10.png");
$(“#消息”).show();
},
函数(){
$(“#单击我”).attr(“src”https://webapps-cdn.esri.com/graphics/ui/plus-sign-10.png");
$(“#消息”).hide();
});
});代码>
您应该看到此消息
试试看
jQuery的函数不处理click事件……您需要使用click()
var $clickMe = $("#clickMe"),
$message = $("#message");
function toggle() {
if ($message.is(':visible')) {
$clickMe.attr("src","https://webapps-cdn.esri.com/graphics/ui/plus-sign-10.png");
$message.hide();
} else {
$clickMe.attr("src","https://webapps-cdn.esri.com/graphics/ui/minus-sign-10.png");
$message.show();
}
}
$clickMe.click(function(){
toggle();
});
$(“#main”)。追加(“”);
$(“#消息”).hide();
函数切换(){
如果($(“#消息”)。是(':visible')){
$(“#单击我”).attr(“src”https://webapps-cdn.esri.com/graphics/ui/plus-sign-10.png");
$(“#消息”).hide();
}否则{
$(“#单击我”).attr(“src”https://webapps-cdn.esri.com/graphics/ui/minus-sign-10.png");
$(“#消息”).show();
}
}
$(“#单击我”)。单击(函数(){
切换();
});
它起作用了 据我所知,toggle没有两个功能。你似乎从来没有启动过你为其设置侦听器的toggle事件。@Huangism它曾一度可用,但是,它从v1.8开始被删除,从v1.9开始被删除——我刚刚意识到它在2.2.0上,所以这很可能就是问题所在,因为OP使用的是2.2,所以这不起作用是有道理的。我们不能完全确定他们为什么删除了2.2,但事实就是如此。。无论哪种方式,@Danis35都需要一个触发.toggle()的事件处理程序,并且需要更新toggle函数以包含show/hide的控件结构fiddle代码与这里的代码片段结合起来有点混乱。。。它不起作用。。。但是…但是!!!这对我帮助很大!!!非常感谢你,乔纳森!我找到了解决办法:
$("#main").append("<img src='https://webapps-cdn.esri.com/graphics/ui/plus-sign-10.png' id='clickMe' />");
$("#message").hide();
function toggle() {
if ($("#message").is(':visible')) {
$("#clickMe").attr("src", "https://webapps-cdn.esri.com/graphics/ui/plus-sign-10.png");
$("#message").hide();
} else {
$("#clickMe").attr("src", "https://webapps-cdn.esri.com/graphics/ui/minus-sign-10.png");
$("#message").show();
}
}
$("#clickMe").click(function() {
toggle();
});