百度地图JS 自定义覆盖物Click事件无法点击

JavaScript09

百度地图JS 自定义覆盖物Click事件无法点击,第1张

给自定义覆盖物添加了click事件后,页面跳转再跳回有覆盖物的页面时,点击事件失效了。

之前是 div.onclick=function(){}

于是

var bugFlag=true

div.addEventListener("touchstart", function(e){

bugFlag = true

})

div.addEventListener("touchmove", function(e){

$timeout(function () {

bugFlag = false

},100) // 移动端的话需要延时

})

div.addEventListener("touchend", function(e){

if(bugFlag==true){

attribute(this.getAttribute('myId'),this.getAttribute('myTotal'),this.getAttribute('startCity'))

}

})

这样的话,拖动地图不会触发点击事件了。

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<script>

function myblur () {

alert("1、离开")

}

function bindEvent(func){

myblur = func

}

function myonclick() {

bindEvent(function(){

alert("天啊!myblur方法被覆盖了!")

})

}

</script>

</head>

<body>

<input type="text" onblur="myblur()" value="光标选中然后光标离开会调用myblur()方法"/>

<input type="button" onclick="myonclick()" value="覆盖myblur()" />

注:覆盖myblur()后,再次光标选中输入框然后再离开

</body>

</html>

测试过,可以添加DIV,点击事件也可以触发。一切正常。

你的代码中没有调用CreateOuterDiv函数。不调用怎么执行你的动态添加DIV的代码呢?

把函数CreateOuterDiv添加到body的load事件