【问题标题】:Does onclick work with any positioning? [closed]onclick 是否适用于任何定位? [关闭]
【发布时间】:2015-06-05 22:23:35
【问题描述】:

我想出了一个应该具有触发功能的 onclick 功能的 cog 符号。当我点击它不起作用。它有绝对定位有关系吗?我该如何解决这个问题?

我使用了这个 HTML:

<div id="cogdiv" onclick="theme()">
    <h1 id="cog" class="themechange fa fa-cog" onclick="theme()"></h1>
</div>

还有这个 JS:

var theme = function() {
    document.getElementById('themes').style.animation = "themesappear 2s forwards";
    document.getElementById('themes').style.WebkitAnimation = "themesappear 2s forwards";
};

当我在控制台中运行该功能时,该功能有效。

检查元素 here 以获取更多代码。

【问题讨论】:

  • 请在此处添加有意义的代码和问题描述。不要只链接到需要修复的站点 - 否则,一旦问题得到解决,这个问题将对未来的访问者失去任何价值。发布证明您的问题的Short, Self Contained, Correct Example (SSCCE) 将帮助您获得更好的答案。有关详细信息,请参阅 Something on my web site doesn't work. Can I just paste a link to it? 谢谢!
  • 最好将代码发布在实际问题中,而不是在未来可能会消失的外部链接中。所以这个问题在长期的未来对其他人有用。
  • 不,它没有 - 如果元素被放置在另一个阻止你的鼠标的元素后面,这确实很重要 - 检查你的 z-index 属性,如果没有尝试添加一些。

标签: javascript html css


【解决方案1】:

绝对定位对onClick 事件的触发方式没有影响。

您只是将元素定位在另一个元素下方,因此另一个元素阻塞了鼠标事件


尝试添加到您的 CSS:

#cogdiv {
 z-index: 9999; //or greater, or 1. Just make sure it's bigger than the overlapping element's z-index
} 

阅读 z-index 和 CSS stack-order 的内容可能也会有所帮助。

【讨论】:

  • 这还没有完全解决它。 OP 在页面上有一个不同的元素仍然覆盖齿轮。
  • @Cerbrus 我知道,但我当然不会深入解释这个问题上的 CSS 文档流程:) - 他知道现在发生了什么,如果他想修复根,那就是另一个问题
  • 如果你不打算回答他的问题,那为什么还要回答呢?你的回答没有解决任何问题
  • 我向他解释了为什么单击事件不起作用并快速修复。这就是问题 - 我是否也必须为他设计他的页面?
  • 快速修复没有任何作用。它不能解决任何问题。
猜你喜欢
  • 1970-01-01
  • 2011-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-07
  • 2015-12-19
  • 2014-06-05
  • 1970-01-01
相关资源
最近更新 更多