我有一个图像映射,其中包含某些包含onmouseover事件的“区域”。大多数这些事件都会激活一个传递某些坐标的函数。 我希望能够在函数SFX_ShowIconOver中操纵坐标。
图像地图由第三方应用创建,因此我只能操纵渲染的内容。
<AREA onmouseover="SFX_ShowIconOver('Chart2','29456',368,10,22,22,false,this)" title="Legend Box" onclick="SFX_SendCommand('29456',false)" shape=rect coords=368,10,390,32>
答案 0 :(得分:0)
不要使用内联javascript,更改为jQuery样式,然后更改变量a,b,c,d,e
。
var a,b,c,d,e;
$('#area_id').mouseover(function() {
SFX_ShowIconOver('Chart2', a, b, c, d, e, false,this);
}).click(function() {
SFX_SendCommand(a, false);
});
答案 1 :(得分:0)
您可以使用JQuery从DOM中删除onmouseover
属性,然后使用JQuery添加自己的鼠标悬停。
修改强>
看看here。那么您需要做的就是确保在加载第三方项目后声明“重写”函数。
答案 2 :(得分:0)
我设法达到了我想要的最终目标。这是代码:
$("area").filter(function () { return this.outerHTML.match('SFX_ShowIconOver') })
.each(function () {
var pairs = $(this).attr("outerHTML").split(', ');
for (var i = 0; i < pairs.length; i++) {
var nums = pairs[i].split(',');
nums[3] = 40;
pairs[i] = nums.join(',');
}
$(this).attr("outerHTML", pairs.join(', '));
});