【问题标题】:Jquery toggle function not workingJquery切换功能不起作用
【发布时间】:2014-01-28 09:34:41
【问题描述】:

谁能告诉我为什么这不起作用?

HTML

<head>
<body id="top" class="home page page-id-1412 page-template-default logged-in stretched open_sans open_sans siteorigin-panels" itemtype="http://schema.org/WebPage" itemscope="itemscope">
        <div id="wrap_all">
            <header id="header" class="header_color light_bg_color mobile_drop_down" itemtype="http://schema.org/WPHeader" itemscope="itemscope" role="banner">
                <div id="header_meta" class="container_wrap container_wrap_meta">
                <div id="header_main" class="container_wrap container_wrap_logo">
                <div id="header_main_alternate" class="container_wrap">
                    <div class="container">
                        <nav class="main_menu" itemtype="http://schema.org/SiteNavigationElement" itemscope="itemscope" role="navigation" data-selectname="Select a page">
                           <div id="megaMenu-sticky-wrapper">
                             <div id="megaMenu" class="megaMenuContainer megaMenuHorizontal wpmega-preset-vanilla megaResponsive megaResponsiveToggle wpmega-withjs megaMenuOnClick megaFullWidth wpmega-noconflict megaMinimizeResiduals themeloc-avia megaMenu-withjs">
                                <div id="megaMenuToggle" class="megaMenuToggle">
                                <ul id="megaUber" class="megaMenu">
                                    <li id="menu-item-8" class="jrm-um-sticky-only menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-home ss-nav-menu-item-0 ss-nav-menu-item-depth-0 ss-nav-menu-reg um-flyout-align-center ss-nav-menu-with-img ss-nav-menu-notext">
                                    <li id="menu-item-1459" class="my_custom_class menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children mega-with-sub ss-nav-menu-item-1 ss-nav-menu-item-depth-0 ss-nav-menu-mega ss-nav-menu-mega-fullWidth mega-colgroup mega-colgroup-6 ss-nav-menu-mega-alignCenter">
                                        <a href="#">

CSS

#overlay-2 {
height: 100%;
width: 100%;
position: fixed;
left: 0;
top: 0;
background: none repeat scroll 0 0 #000000;
opacity: 0.85;  
z-index: 10;
display: none;
}

JS

$(document).ready(function() {

    $('.my_custom_class').click(function()    {
       $('#overlay-2').toggle();
    });
});

我希望在页面加载时隐藏#overlay-2,然后在我使用菜单按钮和在 wordpress 导航菜单“css 类”元框中分配的自定义类时切换显示/隐藏。 .my_custom_class 是我分配给它的。

为什么这不起作用? 如果您能提供正确的代码,那就太好了:)

谢谢!

【问题讨论】:

  • 如果您不向我们提供缺失的 HTML,我们无法重现该问题.my_custom_class 是什么,为什么没有将它添加到 HTML 示例中?到目前为止,这就是你给我们的(+ 我对试图破译你的代码的 HTML 的一些修复):jsbin.com/EqUgUjep/1/edit
  • 好的 HTML 在上面更新了。如果有更多需要,请告诉我。这太令人沮丧了! :) 谢谢

标签: javascript jquery html css wordpress


【解决方案1】:

只是因为您的 HTML 中没有任何 .my_custom_class

如果你添加一个

<button class="my_custom_class">Toggle Overlay</button>

无论是在您的文档中还是在叠加层中,您都可以使用:

LIVE EXAMPLE

【讨论】:

  • 您好,感谢您的回复。如帖子中所述,我在 wordpress 的“css 类”元框中添加了“.my_custom_class”。我什至尝试通过 #menu-item-number 来定位 JS 中的菜单项,显然数字替换为实际数字。
  • 我只是贴了相关的html,因为整个页面的html很长
  • 嘿@Roko C. Buljan 我更新了原始帖子中的 html。 “.my_custom_class 是倒数第二个项目”
  • @user3187895 抱歉,您的 HTML 无法使用。请提供一个更好的例子。学习使用 jsBin 并分享指向您的演示示例的链接。
  • @user3187895 你的工作也是缩小你的代码,直到你解决问题。发布一堆完成课程的行,让您无法轻松回答您的答案。通常,当用户缩小代码以发现他们的问题时,他们可以自己修复它。所以设置一些可读的东西,不要用不必要的线条和样式混淆我们。让它变得简单。看到我的演示了吗?简单,没有问题:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-18
  • 2011-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多