我花了最后几个小时试图找到答案,但似乎没有任何作用......
当点击div(或其中的任何内容;包括iframe内容)时,我需要执行一段代码。下面的代码应该这样做(当添加到div标签中时),但它似乎不起作用。
onclick="if(typeof(_vis_opt_top_initialize) =='function'){ _vis_opt_goal_conversion(200); _vis_opt_pause(500);}"
目的是执行自定义转化目标:
<script type="text/javascript">
if(typeof(_vis_opt_top_initialize) == "function") {
_vis_opt_goal_conversion(200);
}
</script>
任何帮助将不胜感激:)
答案 0 :(得分:1)
我讨厌使用内联js ...讨厌它......
如果你需要考虑IE(&lt; 8),那么就不能使用addEventListener,所以你可以这样做:
function bindListener(el,eventName,eventHandler) {
if (el.addEventListener) { // Anything but IE <8
el.addEventListener(eventName,eventHandler,false);
} else if (el.attachEvent) { // For IE <8
el.attachEvent('on'+eventName,eventHandler);
}
}
然后你可以用这样的东西来调用它:
var ele = document.getElementById('idOfElement');
bindListener(ele, 'click', functionToCall);
答案 1 :(得分:0)
答案 2 :(得分:0)
我为你写了一个简单的例子:(j查询答案)
Html代码
<div class="test">Click</div>
JavaScript代码
$('div.test').click(function(){
alert("some");
});
<强>被修改强>
JavaScript示例
<html >
<script type="text/javascript">
function AttachAllDivEvents()
{
var divCollection = document.getElementsByTagName("div");
for (var i=0; i<divCollection.length; i++)
{
AttachDivClickEvent(divCollection[i]);
}
}
function AttachDivClickEvent(divObj)
{
divObj.onclick = function()
{
document.getElementById("count").innerHTML = parseInt(document.getElementById("count").innerHTML) + 1;
};
}
window.onload = AttachAllDivEvents;
</script>
<body>
<div>click</div>
<p id="count" style="font:bold 20px Times;color:red;text-indent:20px">1</p>
</body>
</html>
答案 3 :(得分:0)
首先为您的div
提供唯一ID
<div id="yourDivID"></div>
然后在window.onload
var yourDiv = document.getElementById("yourDivID");
yourDiv.onclick = function() {
if(typeof(_vis_opt_top_initialize) == "function") {
_vis_opt_goal_conversion(200);
}
}
}