首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用jquery单击时从Div中更改CSS类

使用jquery单击时从Div中更改CSS类
EN

Stack Overflow用户
提问于 2015-06-08 11:17:54
回答 2查看 377关注 0票数 0

上个星期我被困在一个问题上。我在网上查看了很多次,我想我找到了很多次解决方案,但似乎都没有效果。我想要的是以下内容:,当我单击元素A时,我希望更改元素B的类,

我的密码:

Html:

代码语言:javascript
运行
AI代码解释
复制
<div class="header"> 

    <a class="nav-toggle" href="#"><span></span></a>

    <nav class="navigation_menu id="nav">

            <ul class="navigation_ul">

                <li><a href="#">Home</a></li>
                <li><a href="#">About</a></li>
                    <li class="exclude_under_line"><a href="#">Portfolio<span class="drop_arrow">&#9660;</span></a>

                        <ul>

                            <li><a href="#">Trimester 1</a></li>
                            <li><a href="#">Trimester 2</a></li>
                            <li><a href="#">Trimester 3</a></li>

                        </ul>

                    </li>
                <li><a href="#">Contact</a></li>
                <li><a href="#">Forum</a></li>

            </ul>

    </nav>

</div>

CSS:

代码语言:javascript
运行
AI代码解释
复制
/** General Style **/

body {
    background:f5f5f5;
    margin: 0px;
    padding: 0px;
    font-family: 'roboto', sans-serif;
    font-weight: 300;
}

/** Text Style **/

a {
    text-decoration: none;
    color: inherit;
}

/** Header Style **/

.header {
    background: #607d8b;
    margin: 0px;
    padding: 0px;
    padding-bottom: 100px;
    color: white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}

/** Navigation Menu **/

    /** Basic Style **/

    .navigation_menu > a { 
        display: none; /* Removes Show Navigation and Hide Navigation */
     }

     .navigation_menu ul{
        margin: 0px; /* Removes the auto create margin around the ul element */
        padding: 0px;
    }

    .navigation_menu li { 
        position: relative; /* Makes Drop Down Menu Work and being showed */
        list-style-type: none; /* Removes dots before Li elements  */
        font-size:18px; /* Makes font size 18 */
    }

    .navigation_menu > ul > li {
        height: 30px; /* Determines The width height between drop down and menu */
        float: left; /* Makes them float besides each other */
        padding-left: 10px;
        padding-right: 10px;
        padding-top: 6px;
        padding-bottom: 2px;
    }

    .navigation_menu > ul > li > ul {
        padding: 0px; /* Removes the automatic created padding around the drop down ul */
        width: 140%; /* Makes the text in drop down menu (whos bigger then parent) not go to a second line */
        margin-top: -4px; /* Pushes the drop down are go down 8 pixels */
        position: absolute; /*Makes the child ul not affect the parent li */
    }

    .navigation_menu li ul {
        display: none;  /* Hides Drop Down */
        margin-left: -10px;
    }

    .navigation_menu li:hover ul {
         display: block; /* Makes Drop Down Menu Work again */
         background: white;
         box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
    }

    /** Drop Arrow Style **/

    .drop_arrow {
        font-size:12px; /* Edits the size of the drop arrow */
        margin-left:4px; /* Moves it a little bit away from the text next to it */
        line-height:0%; /* Makes the icon don't affect the word next to it */
    }

    /* Hamburger  Style */

    .nav-toggle {
        display:none;
    }

    .nav-toggle { cursor: pointer; padding: 10px 35px 16px 0px; }

    .nav-toggle span, .nav-toggle span:before, .nav-toggle span:after {
      cursor: pointer;
      border-radius: 1px;
      height: 3px;
      width: 20px;
      background: white;
      position: absolute;
      display: block;
      content: '';
    }

    .nav-toggle span:before {
      top: -7px; 
    }

    .nav-toggle span:after {
      bottom: -7px;
    }

    .nav-toggle span, .nav-toggle span:before, .nav-toggle span:after {
      transition: all 500ms ease-in-out;
    }

    .nav-toggle.active span {
      background-color: transparent;
    }

    .nav-toggle.active span:before, .nav-toggle.active span:after {
      top: 0;
    }

    .nav-toggle.active span:before {
      transform: rotate(45deg);
    }

    .nav-toggle.active span:after {
      transform: rotate(-45deg);
    }

    @media only screen and ( max-width: 400px )  {

        .nav-toggle {
            display:block;
        }

        .navigation_menu {
            display: none;
        }

        .navigation_menu_new {
             display: block;
        }

    }

Javascript:

代码语言:javascript
运行
AI代码解释
复制
document.querySelector( ".nav-toggle" )
  .addEventListener( "click", function() {
    this.classList.toggle( "active" );
  });

因此,我基本想要的是,当我单击“Nav”div时,我希望"navigation_menu“类(当屏幕大小小于400)从.navigation_menu更改为.navigation_menu_new。我想要这个,所以菜单将从无效到可见后,访问者点击汉堡包。

这是codepen:http://codepen.io/anon/pen/YXVjrv的钢笔

提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-08 11:23:13

一个简单的解决办法是:

代码语言:javascript
运行
AI代码解释
复制
$(".nav-toggle").click(function(){
  $(".navigation_menu").toggleClass("new");
});
票数 0
EN

Stack Overflow用户

发布于 2015-06-08 11:35:30

您可以从这样的toggleClass函数中受益:

代码语言:javascript
运行
AI代码解释
复制
jQuery(document).ready(function(){
    jQuery(".Nav-Toggle").click(function(){
        jQuery(".navigation_menu").toggleClass("navigation_menu_new");
    });
});

根据您希望实现的额外功能,您可能希望探索使用addClass/removeClass,但是为了“交换”类的目的,toggleClass是您所需要的。一定要像我在一个较小的例子中所做的那样测试它,这样您就不必用大图( jsFiddle )使自己变得过于复杂。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30717325

复制
相关文章
Swift 全局导入Module
我们有时候需要全局导入一个Module,因为这个组件在每个文件都使用很频繁。在OC的时代,PCH做的工作,Swift怎么办呢
星宇大前端
2019/04/01
1.4K0
Swift 4 新特性
private 权限扩大 在 Swift 4 中,extension 可以读取 private 变量了。 Swift 3 中,如果将主体函数的变量定义为 private,则其 extension 无法读取此变量,必须将其改为 filePrivate 才可以。 单向区间 单向区间是一个新的类型,主要分两种:确定上限和确定下限的区间。直接用字面量定义大概可以写成 …6和 2… 例如 let intArr = [0, 1, 2, 3, 4] let arr1 = intArr[...3] // [0,
BY
2018/05/11
9060
Swift 4 新特性
Swift 3 中,如果将主体函数的变量定义为 private,则其 extension 无法读取此变量,必须将其改为 filePrivate 才可以。
零式的天空
2022/03/25
4820
Swift基础 关于Swift
Swift 是编写软件的绝佳方式,无论是手机、台式机、服务器还是任何其他运行代码的内容。这是一种安全、快速和互动的编程语言,它结合了现代语言思维的最佳与更广泛的苹果工程文化的智慧以及开源社区的各种贡献。编译器针对性能进行了优化,语言也针对开发进行了优化,同时不影响两者。
郭顺发
2023/07/17
1310
4.Swift教程翻译系列——Swift基本运算符[通俗易懂]
英文版PDF下载地址http://download.csdn.net/detail/tsingheng/7480427
全栈程序员站长
2022/07/07
7620
Swift进阶一:Swift简介
Swift语言引入了协议、协议的扩展、泛型等新特性,因此使用Swift语言可以很好地面向协议编程;Swift语言将函数和闭包提升为语言的一等公民,函数可以作为一个变量、可以作为其他函数的参数、作为其他函数的返回值等来传递,所以我们可以使用Swift来进行函数式编程,另外Swift也提供了很多高阶函数来辅助我们进行函数式编程;Swift也提供了属性的权限限定等面向对象的基础设置,因此在Swift中也可以面向对象来编程。
拉维
2020/07/09
2.9K0
Swift进阶一:Swift简介
Swift4 String的用法
本文语法为Swift4 获取字符串的长度 let str = "窗前明月光,疑是地上霜"; let length = str.count; 正则获取字符串 let str = "哈哈[呵呵]嘿嘿" if let range = str.range( of: "\\[[^\\[^\\]]+\\]", options: NSString.CompareOptions.regularExpression, range: nil, locale: nil ){ if
码客说
2019/10/22
5220
【Swift4】(7) 枚举 | 应用
前端修罗场
2023/10/07
1540
Swift
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/118291.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/13
2.1K0
Swift 入门:编译 Swift 源码(1)
编程语言的很多特性都是依赖于编译器的。比如,与 C 语言的枚举相比,Swift 的枚举就依赖编译器实现了关联值等高级特性。
酷酷的哀殿
2020/11/07
6.5K1
Swift 统一导入三方库
此时在Swift中的宏定义那就只能找个文件直接let了,比如Const.swift之类的。
韦弦zhy
2018/09/11
2.1K0
Swift 入门:编译 Swift 源码(2)
我们曾经在上一篇文章中 https://cloud.tencent.com/developer/article/1744552 提到 Swift 及相关组件的编译会耗费大量的磁盘空间。
酷酷的哀殿
2020/11/15
2K0
Swift 入门:编译 Swift 源码(2)
Swift和OC互调(一)Swift调用OCOC调用Swift
整理之前学习swift的笔记,虽然现在看起来很简单,但还是想分享出来。 (一)Swift调用OC 假设:我们的项目是Swift的。项目中用到了OC写的一些类。那么怎么让Swift调用OC类呢?如下图:
VV木公子
2018/06/05
13.6K0
Swift4语法新特性 原
      随着iPhone X的来到,iOS11的发布,Swift语言也更新到了第4个版本。在Swift4中,无论是代码风格还是编程理念都更进一步的融合了许多现代编程的思想。对于熟悉传统语言的开发者来说(尤其是Objective-C、Java和C++),可能会感觉这些特性并没有多大的价值反而非常不习惯,但是我们依然可以茶余饭后(没事干的时候),一窥Swift4语言的玩法,体验一下Swift语言的设计思想和编码风格。
珲少
2018/08/15
1.7K0
Swift2转Swift3
接触swift 已经有一年多的时间了,由最初的OC代码转为 swift 代码,然后从 swift 2.3 转为 swift 3。每次的转换都感觉是将项目整个的翻新了一遍,每次的转换代码都是一次改朝换代。
onety码生
2018/11/21
2K0
使用 Swift Package Manager 创建 Swift 包
image.png Using the Package Manager 官网 https://swift.org/getting-started/#using-the-package-manager 进入准备创建 Swift 包文件位置 image.png 创建新的Swift包,首先要创建并输入一个名为的目录 perfect-Qiniu: image.png 进入刚才创建的 perfect-Qiniu 文件
LeeCen
2018/10/11
1.4K0
使用 Swift Package Manager 创建 Swift 包
【Swift4】(4) 控制流 for | switch | if-else
前端修罗场
2023/10/07
1820
Swift-?-!
上面了解到的是普通值,接下来Optional值要上场了。Optional其实是个enum,里面有None 和Some两种类型。其实所谓的nil就是Optional.None,非nil就是Optional.Some,然后会 通过Some(T)包装(wrap)原始值,这也是为什么在使用Optional的时候要拆包(从enum里取出来原始值) 的原因,也是Playground会把Optional值显示为类似{Some”hello world”}的原因,这里是 enum Optional的定义:
用户3004328
2018/09/06
9190
Swift Runtime ?
你肯定也想过       在OC中相信每一个iOS开发都知道Runtime, 现在Swift也更新到4.0版本了,要是你也学习过Swift的话你可能也会想过这样一个问题,OC大家都知道是有动态性的,你能通过Runtime 的API获取你想要的属性方法等等,那Swift呢?是不是也和OC一样呢?       这个问题在我看Swift的时候也有想过,带着这个问题就总结出了今天这篇文章。       先说说这个Runtime,在自己之前的文章中有总结过关于OC的Runtime以及它API的一些基本的方法和在项目中
Mr.RisingSun
2018/02/06
5K0
Swift Runtime ?
swift set
set是一个Set类型的集合,集合中只能出现String类型的数据,如果放入了其他类型,会报错。但是如果没有指定集合中的数据类型,那就没有关系。
赵哥窟
2018/09/13
7550
swift set

相似问题

如何在游乐场中导入Swift软件包?

49

无法将Firebase导入Swift游乐场

20

Swift软件包管理器- Swift 4语法

13

Swift4游乐场凯撒密码错误

23

无法使用Swift 4软件包管理器导入包

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档