gpt4 book ai didi

javascript - Protovis jQuery tipsy 不适用于点击事件

转载 作者:行者123 更新时间:2023-11-30 18:41:16 25 4
gpt4 key购买 nike

我在我的图表上工作得很好。 mouseover 事件工作正常,但是当我添加一个 click 事件时,它没有按我的意愿执行 click 事件。

下面是我的代码:

var vis = new pv.Panel()
.width(w)
.height(h);

vis.add(pv.Bar)
.data(data)
.width(4)
.left(function() 5 * this.index)
.height(function(d) Math.round(d*4))
.bottom(0)
.text(function(d) d.toFixed(1))
.event("mouseover", pv.Behavior.tipsy({gravity: "w", fade: true}))
//If I remove the mouseover event, the click event will work but not when both are veing put together.
.event("click", function() self.location = "http://stanford.edu");

vis.render();

谁能帮我解决这个问题?

最佳答案

这里有一个解决方法。您可以将点击回调函数传递给 pv.Behavior.tipsy 并在其中调用点击事件。

  1. 修改pv.Behavior.tipsy(...) 传入一个回调函数:

    pv.Behavior.tipsy = function(opts, callback)

  2. 修改事件调用以传入回调函数:

    .event("mouseover", pv.Behavior.tipsy({gravity: "w", fade: true}, function(){alert('点击回调');}))

    <
  3. 修改protovis.tipsy.js中return函数的最后一行:

    返回函数(d){ ………… $(tip).mouseleave(cleanup).tipsy("show"); 如果(回调){ $(提示).点击(回调); } };

关于javascript - Protovis jQuery tipsy 不适用于点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6808339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com