我有一个甜甜圈raphael圆环图,我想在点击时显示一个相应的文本div。
我尝试为每个部分设置id,然后使用此代码使用jquery触发它们但它不起作用。
jQuery(document).ready(function() {
jQuery(".div1, .div2, .div3, .div4").hide();
jQuery("#arched1, #arched2, #arched3, #arched4").bind("click", function () {
jQuery(".div1, .div2, .div3, .div4").hide();
if (jQuery(this).attr("id") == "oxbowarc1") {
jQuery(".div1").show();
} else if ($(this).attr("id") == "oxbowarc2") {
jQuery(".div2").show();
} else if (jQuery(this).attr("id") == "oxbowarc3") {
jQuery(".div3").show();
} else {
jQuery(".div4").show();
}
});
});
我可以做些什么来完成这项工作?
答案 0 :(得分:1)
代表。在代码中添加或动态分配id
元素,jQuery在创建处理程序时无法识别它们。
尝试类似
的内容jQuery(container).on("click", "#arched1, #arched2, #arched3, #arched4", function () {
...
本质上,您将处理程序附加到容器(可以是document
,"body"
或更具体的元素),仅适用于选择器中提到的id
。这样,处理程序附加到documentReady上存在的元素。
我没有把它添加到你的小提琴中,因为它似乎缺少id
的赋值。