五花包子 2015-06-01 07:28 采纳率: 0%
浏览 3118
已采纳

关于js中获取dom元素的事件(引用)的问题

在网页上显示楼层平面图(类似地图的那种),有两个容器A和B,A装着20个表示楼层里的商店的DOM元素(简称商店),B容器装着商店的名字(简称名字)。商店写
了单击事件(点击高亮效果)。并且有一个方法(f1)生成商店的名字(传入商店对象,返回名字对象),页面初始化时会遍历所有的商店生成名字。
现在问题是点击名字的时候没有触发名字下面 商店的单击事件,原因很简单,商店被名字挡住了。我想的解决方法是在f1的代码里获得商店对象的单击事件,然后赋给名字,
实现点击名字也有商店高亮效果。现在的问题就是该如何获取商店对象的单击事件?并把它复制给名字对象的单击事件?
PS:在名字对象的单击事件里调用商店的单击事件也能解决问题,但是总觉得差了写

  • 写回答

2条回答 默认 最新

  • Go 旅城通票 2015-06-01 08:40
    关注

    你是怎么绑定事件的?用jquery还是原始的js?

    你的商店和名字id起规则一点,有对应关系就好了,如shop_1,name_1依次类推

    点击name的时候通过 obj.id得到name的id,然后通过将name换为shop就得到shop的id了。。然后传入shop对象触发f1事件

    如果是jquery直接$('#'+nameobj.id.replace('name','shop').trigger('click')

    存js就用 document.getElementById(nameobj.id.replace('name','shop').onclick()或者f1.apply(document.getElementById(nameobj.id.replace('name','shop'))更改f1中的this指向。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable