【问题标题】:Using javascript to trigger a link when another one is clicked单击另一个链接时使用javascript触发链接
【发布时间】:2012-02-17 03:38:25
【问题描述】:

我知道如何创建 onclick 事件处理程序来运行脚本。我想知道是否可以在一个 html 文档中有两个超链接,然后单击一个会触发另一个的超链接(我假设通过每个 onclick 事件处理程序和 DOM ID 等)

谢谢。

【问题讨论】:

标签: javascript events onclick handler


【解决方案1】:

我认为click() 是特定于 IE 的。尝试点击第一个超链接:

eval( document.getElementById('mylink2').href ); 

或者你可以试试:

document.getElementById(id).attachEvent('onclick',name_of_function); //(for IE)
document.getElementById(id).addEventListener('click',name_of_function,false); //(for others)

了解更多活动check this

【讨论】:

  • 你为什么在那里使用eval?为什么不document.getElementById('mylink2').getAttribute('href') 或类似的东西?
  • @Josh 我认为eval 是用于包含javascript: URI 方案标识符后跟一些javascript 代码的href 属性。在这种情况下,javascript: 部分将被解析为标签;代码应按预期进行评估。
【解决方案2】:

如果您只想将页面导航到第二个链接的href

targetLink.onclick = function() { document.location.href = sourceLink.href; };

否则你可以发送一个点击事件,正如 Pranav 提到的:

targetLink.onclick = function() {
    var event = document.createEvent("MouseEvents");
    event.initMouseEvent("click");
    sourceLink.dispatchEvent(event);
};

详情请见dispatchEvent

【讨论】:

  • 我不知道“位置”是一个对象。谢谢!也谢谢@Pranav。
猜你喜欢
  • 1970-01-01
  • 2016-11-28
  • 1970-01-01
  • 2013-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-03
  • 2018-05-05
相关资源
最近更新 更多