【问题标题】:How to trigger a "click" event on an invisible button in IE9?如何在 IE9 中的不可见按钮上触发“点击”事件?
【发布时间】:2014-01-06 13:18:29
【问题描述】:

由于一些非常奇怪的授权问题,我的 CSS(或其他东西)搞砸了,我看不到我的按钮(实际上是 锚点)。我正在使用 IE9 并且没有使用其他东西的选项。据我所知,JQuery 1.10.2 已加载。

我对看到我的按钮不是很感兴趣,只是点击它,因为我不想修复 CSS,我只想访问后端(我不是这个故事中的前端人员) .

我的按钮如下所示:

<a onclick="js.search()" href="javascript:void(0)" id="asdf12345">Search<img class="r" src="im/arrow-gray.gif"/></a>

我尝试过的:

  • 首先,我在 IE9 开发人员工具 > HTML 选项卡中手动输入了 ID。 (主播没有身份证——这就是原因)
  • 试图手动调用“js.search()”函数,但是js没有定义。
  • 我尝试使用 jQuery 选择器获取精确 ID $('#asdf12345').trigger("click");,但它也没有任何作用。

我在前端不是很有经验,例如我不知道为什么“js”对象不在控制台的范围内(因为我可以调用 alert('asdf');例如 函数,所以某些东西 确实 起作用)。

因此,如果有人知道我可以通过什么方式调用我的后端,模拟点击,那将有很大帮助!

[编辑] 在未能以编程方式触发 onClick 之后,我接受了 Alex Shilman 的建议,我弄乱了 CSS - 让我的字体更小,以便我的图像适合屏幕,所以我可以点击它们。

【问题讨论】:

  • 如果它不在控制台的范围内,那么它就不应该在链接的范围内。
  • 是什么让您认为应该调用js.search() 而不仅仅是search()
  • 好吧,字符串“js.search()”让我觉得……无论如何“search()”也不起作用

标签: javascript jquery html internet-explorer-9


【解决方案1】:

取出内联 onclick 并使用 jquery 创建一个事件处理程序,如下所示:

html:

<a id="asdf12345"> Search <img class="r" src="im/arrow-gray.gif"/></a>

JS:

 $(function(){
  $('body').on('click', '#asdf12345', function(e){
    e.preventDefault();
    alert('clicked anchor');
  });
});

那么你可以这样做:

$('#asdf12345').trigger("click");

如果您没有在屏幕上看到您的图像,请尝试摆弄 css。

【讨论】:

  • 显然什么也没做:|
  • 您是否在点击时使用 $(function(){}) 进行了换行
  • 页面加载后你的 id="asdf12345" 会动态添加吗?
  • 我在开发者工具中手动添加。它在程序意义上不是动态的,但实际上我在页面加载后手动添加它......它仍然没有做任何事情:|
  • 好的,这就是为什么。我再次编辑了我的答案。确保 html 和 javascript 完全匹配。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-04
相关资源
最近更新 更多