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

百度地图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'))

}

})

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

看时间,毕业了吧最近。

前端开发确实是最容易最快上手的,但深入之后水也是很深的。

你的问题:点击没效果,当然是事件绑定不对。但具体为什么一眼没看出来,不像是imageArr[i]的问题。a标签是有默认点击事件的。你js代码中直接使用变量placeHolder的方法(if (placeHolder.nodeName != "Description Image")),却在后面定义并赋值,就算有变量提升,代码还是会报错。js是单线程的,有错,就不执行了.估计你每次点击的时候都报错了。可以使用谷歌浏览器的控制台看看。

一旦开始接触js了,就先了解谷歌的控制台去吧。

不知道谁领你进门的。

知道原生javascript是好的,不过过于繁琐,会让人失去兴趣。

可以考虑从实用入手,等有一定前端基础了,再回头看原生代码。

建议全面阅读w3school的全部在线教程作为入门。

建议前端学习步骤:

1、html

2、css

3、jquery、PS (此时你无疑应该去看jquery了,而不是写addOnloadFunc去兼容浏览器。win10出来了,这种函数我猜很少有项目在用。网上有现成的兼容库,再自己开发、测试是浪费资源的。资源包括人力成本和时间成本。)

4、理解HTML dom、09年发布的ES5标准。

5、理解javascript对象、闭包

6、理解javascript函数:继承、派生

7、此时选择前端方向侧重点。动画css3,移动端html5,纯js开发

8、了解前端工程化思想。构建(css构建,js构建)。

9、了解其它主流javascript库。关注网页性能。

10、了解服务器端知识。linux、 node、 Apache。

11、前端的未来:ES6789?

http://tieba.baidu.com/p/3363964210?pid=59193862579&cid=0&from=prin#59193862579?from=prin

js使onclick事件无效的方法很简单,只需要选中这个元素,然后让它的onclick赋值为null即可。

1、这是针对此问题的测试页面

全部代码如下

<button onclick="alert('上面按钮点击')" id="btn" >点击有警告</button>

<br><br>

<button onclick="document.getElementById('btn').onclick=nullalert('成功使上面按钮点击失效!')">使上面按钮点击事件失效</button>

其中最关键的是这句document.getElementById('btn').onclick=null

2、如图,这是测试点击上面的按钮d出的警告

3、点击下面按钮,提示上面的按钮点击失效

4、再次点击上面的按钮没有d出效果了


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/bake/11935162.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存