li元素上的JavaScript“ onClick”

奥格达布

我使用ul制作了一个菜单栏,并且li希望一些onClick事件链接到JavaScript函数。

但这不起作用,单击菜单根本没有任何作用。

该函数在我已经使用过的JS文件上,并且在另一个元素上进行了测试,看来id仅在我的内部不起作用li

这是HTML:

<div id="header">
    <div id="titleContainer">
        blablabl
    </div>
    <ul id="menuContainer">
        <li class="menuItem" id="videoMenu">
            <a href="#" onClick="showAbout2();"> Video</a>
        </li>
        <li class="menuItem" id="playlistMenu">
            Playlist
        </li>
        <li class="menuItem" id="aboutMenu">
            About
        </li>
        <li class="menuItem" id="controlsMenu">
            Controls
        </li>
    </ul>
</div>

CSS:

#titleContainer
{
    box-shadow: 0px 0px 5px #000;
    color: lightgrey;
    font-size: 20px;
    font-weight: bold;
    line-height: 50px;
    text-align: center;
}

#menuContainer
{
    background-color: #333333;
    line-height: 35px;
    margin: 0;
    position: relative;
    text-align: center;
    z-index: -1;
}

#menuContainer li
{
    display: inline;
    list-style: none;
}

JS:

function showAbout2()
{
    console.log("bonjour");
}

回答:

答案是:

删除z-index。


我想单击一个较低层的元素。因此,我将尝试使用此http://www.vinylfox.com/forwarding-mouse-events-through-layers/

感谢大家 : )

哈里

删除z-index上的#menuContainer这将导致#menuContainer落后,因此阻止了点击事件的发生/生效。

#menuContainer
{
    background-color: #333333;
    line-height: 35px;
    margin: 0;
    position: relative;
    text-align: center;
    z-index: -1; /*Remove this line.*/
}

function showAbout2() {
    console.log("bonjour");
}
#titleContainer {
    box-shadow: 0px 0px 5px #000;
    color: lightgrey;
    font-size: 20px;
    font-weight: bold;
    line-height: 50px;
    text-align: center;
}
#menuContainer {
    background-color: #333333;
    line-height: 35px;
    margin: 0;
    position: relative;
    text-align: center;
}
#menuContainer li {
    display: inline;
    list-style: none;
}
<div id="header">
    <div id="titleContainer">blablabl</div>
    <ul id="menuContainer">
        <li class="menuItem" id="videoMenu"> <a href="#" onClick="showAbout2();"> Video</a>

        </li>
        <li class="menuItem" id="playlistMenu">Playlist</li>
        <li class="menuItem" id="aboutMenu">About</li>
        <li class="menuItem" id="controlsMenu">Controls</li>
    </ul>
</div>


以下更新不是原始问题的一部分,而是根据您对答案的评论添加的。

似乎删除z-index: -1会破坏box-shadow您网站上效果,因为它将元素重新带到了最前面。为了克服这个问题,请在原始答案中提到的项目中#titleContainer以及#mainContent删除后添加以下行

z-index: 2; 
position: relative; 

这将使阴影重新出现,因为#menuContainer我们将其他两个放在前面而不是发送出去。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

LI元素的Onclick()事件

来自分类Dev

li 元素上的 onClick 没有正确传递目标 ID?

来自分类Dev

数组元素上的onClick事件javascript React

来自分类Dev

javascript-使用按钮的textarea onclick创建新的<li>元素

来自分类Dev

平滑滚动li元素的onclick

来自分类Dev

使用纯JavaScript获取li元素onclick,而无需将onClick应用于每个元素

来自分类Dev

<audio>元素上的onclick事件

来自分类Dev

在 <span> 元素上使用 onClick

来自分类Dev

ondblclick无法与onclick javascript一起在元素上使用

来自分类Dev

滚动到onClick JavaScript元素

来自分类Dev

如何使用 javascript onclick console.log 第二个 li 元素

来自分类Dev

onClick 子 <li> 反应

来自分类Dev

onClick之后元素上的CSS动画

来自分类Dev

数组元素上的 ReactJS onClick 事件

来自分类Dev

动态创建onclick事件锚元素-javascript

来自分类Dev

使用JavaScript从onclick获取祖先元素的ID

来自分类Dev

javascript文档onmousedown取消元素onclick

来自分类Dev

使用onclick元素的Javascript更新razor变量

来自分类Dev

使用JavaScript从onclick获取祖先元素的ID

来自分类Dev

动态创建onclick事件锚元素-javascript

来自分类Dev

Javascript - 用于不同操作的多个 onclick 元素

来自分类Dev

javascript上奇怪的javascript行为onClick ondiv

来自分类Dev

onclick选择子元素

来自分类Dev

ASP .NET元素onclick

来自分类Dev

如何删除onclick元素

来自分类Dev

删除调用 onclick 的元素

来自分类Dev

Javascript onclick脚本正在更改不包含指定类的元素上的类

来自分类Dev

使用 element.innerHTML 在 javascript 创建的元素上触发 onclick 事件

来自分类Dev

JS在li上使用onclick事件显示块

Related 相关文章

热门标签

归档