javascript - 单击圆环图部分时显示/隐藏 Div

标签 javascript jquery 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();
    }
});
});

我该怎么做才能让这项工作成功?

这是 fiddle http://jsfiddle.net/dll416/17j9Lhwg/1/

最佳答案

代表。这些元素是在代码中动态添加或分配 id 的,jQuery 在创建处理程序时无法识别它们。

尝试类似的事情

jQuery(container).on("click", "#arched1, #arched2, #arched3, #arched4", function () {
...

本质上,您将处理程序附加到容器(可以是 document"body" 或更具体的元素),仅适用于 id<选择器中提到的。这样,处理程序就会附加到 documentReady 上确实存在的元素。

我没有将它添加到你的 fiddle 中,因为那里似乎缺少 id 的分配。

关于javascript - 单击圆环图部分时显示/隐藏 Div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27519366/

相关文章:

JavaScript 或 jQuery 用于以检查格式打印行条目 表的每一行应通过打印链接单独打印

jquery - Rails 无法正确解码来自 jQuery 的 JSON(数组变成带有整数键的散列)

php - 使用需要 MySQL 查询 + PHP 的 AJAX 刷新 DIV

javascript - 如何在raphael js中将一个元素放入另一个元素中?

javascript - 限制在一个三 Angular 形内

javascript - 从 rxjs 存储中的状态获取最新的 2 个值

javascript - 如何滚动到父 iframe 的顶部按下 iframe 内的按钮?

javascript - 隐藏非事件项目形成剑道多选建议

javascript - 在自定义坐标处获取 RaphaelJS 元素的颜色填充

.net - 需要 JavaScript 代码方面的帮助