【问题标题】:Clicking on Links and Buttons shows focus outline单击链接和按钮显示焦点轮廓
【发布时间】:2014-08-25 12:01:28
【问题描述】:

我正在尝试解决使用jQuery 的现有应用程序中的问题。问题是,每当我单击页面上的任何链接或按钮时,我都会看到该元素具有焦点轮廓(例如,在 Chrome/Safari 的情况下为蓝色发光),就好像该元素具有焦点一样。点击后我必须摆脱那个轮廓。我不认为这是默认行为,因为我无法在任何其他站点上复制它。就此而言,我无法在只有一个链接的简单 HTML 页面上复制它。

我不能使用outline:none 因为我必须在使用制表键的情况下显示轮廓。我尝试使用document.activeElement.blur()$(element).blur() 没有成功,因为一些事件处理程序正在使用event.stopPropagation(),我无法更改每个事件处理程序的代码。

谁能帮我解决这个问题?单击后链接保持焦点的原因可能是什么?代码中没有任何地方以编程方式完成,因为它发生在每个链接和按钮以及一些 li 元素上。

感谢您在这方面的帮助。

【问题讨论】:

  • 请分享您的代码并尝试制作jsfiddle.net 示例。现在,我不知道你在说什么。此外,“不能发布图片”!=“不能发布图片链接”。
  • 如果您有现有项目,那么它可能发生在 CSS 或任何 JS 文件中,您需要找到使您的链接或按钮突出显示的类。然后签入解决方案,我相信你会得到它。
  • @SecondRikudo 正如我在问题中提到的那样,如果我尝试使用一些新代码来复制它,那么问题就不会发生,因为它不是默认行为,因此很遗憾,jsfiddle 无济于事。应用程序代码太大而无法共享,如果我知道是什么代码导致了这个问题,我现在就会修复它。您是否知道元素在单击后是否会保留焦点,因为默认情况下,单击任何链接后焦点应该转到正文。如有错误请指正。
  • @AbhijitPandya 正如我在问题中提到的那样,我看不到任何使用 JS 或 CSS 完成的操作。您是否知道元素在单击后是否会保留焦点,因为默认情况下,单击任何链接后焦点应该转到正文。如有错误请指正。
  • @Vidhu 在无菌环境中复制是最基本的调试形式之一。如果您自己做不到,我怀疑这里的任何人都可以认真地帮助您而不是猜测。

标签: javascript jquery html css focus


【解决方案1】:

我认为这是 Chrome 和 safari 的默认行为。

如果您访问此页面https://www.linkedin.com/ 并单击电子邮件地址和密码字段,那么您将看到同样的事情发生在您身上。希望我没有错。。

【讨论】:

  • 这是评论,不是答案
【解决方案2】:

你可以给出大纲:无;

对于元素上的焦点/模糊:您只需添加类 .outlineborder

.outline{
  outline:inherit !important;
 }

 $('.button').on('blur').... $(this).addClass('outline');

【讨论】:

    猜你喜欢
    • 2021-07-09
    • 1970-01-01
    • 1970-01-01
    • 2014-06-13
    • 1970-01-01
    • 2017-01-14
    • 2021-09-30
    • 2017-07-17
    • 1970-01-01
    相关资源
    最近更新 更多