五花包子 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条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!