Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何使用较少的代码创建jQuery函数

如何使用较少的代码创建jQuery函数
EN

Stack Overflow用户
提问于 2021-05-27 12:48:41
回答 4查看 52关注 0票数 0

我试图在jquery中创建一个函数。我有三个有三个按钮的盒子。当我点击一个按钮,然后一个盒子会显示,其他的盒子将被隐藏。另一个按钮也是一样的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    $("#one").click(function () {
            $(".box1").show();
            $(".box2").hide();
            $(".box3").hide();
        });

        $("#two").click(function () {
            $(".box2").show();
            $(".box1").hide();
            $(".box3").hide();
        });
        $("#three").click(function () {
             $(".box3").show();
            $(".box1").hide();
            $(".box2").hide();
        });
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="box1" style="display:none">box one</div>
<div class="box2" style="display:none">box Two</div>
<div class="box3" style="display:none">box Three</div>


<button id="one" type="button">One</button>
<button id="two" type="button">Two</button>
<button id="three" type="button">Three</button>

我的问题是,是否有任何方法可以实现我的目标,而不重复相同的代码多次。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2021-05-27 12:55:06

有一种更简单的方法,您可以使用属性。

看看下面。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$(".container button").click(function(){
  var className = "."+ $(this).attr("target");
  $(".container div").hide() // hide all divs
  // now view the target one
  $(className).show();
});
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
<div class="box1" style="display:none">box one</div>
<div class="box2" style="display:none">box Two</div>
<div class="box3" style="display:none">box Three</div>

<button id="one" target="box1" type="button">One</button>
<button id="two" target="box2" type="button">Two</button>
<button id="three" target="box3" type="button">Three</button>
</div>

票数 2
EN

Stack Overflow用户

发布于 2021-05-27 12:58:07

下面是一种利用按钮的ID和div的ID来创建动态函数的方法

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$(".button").click(function(e) {
  // set up the object to map stuff
  let obj = {
    'one': 'box1',
    'two': 'box2',
    'three': 'box3'
  };
  $(".box").hide();
  $("." + obj[e.target.id]).show();
});
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.box {
  display: none;
}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="box1 box">box one</div>
<div class="box2 box">box Two</div>
<div class="box3 box">box Three</div>


<button id="one" class='button' type="button">One</button>
<button id="two" class='button' type="button">Two</button>
<button id="three" class='button' type="button">Three</button>

票数 0
EN

Stack Overflow用户

发布于 2021-05-27 13:02:03

单击任何按钮时,隐藏所有消息。然后,只需显示其类中谁的索引与其组内按钮的索引相匹配的消息。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$("button").click(function (event) {
  // Hide all the messages
  $(".box").each(function(index, box){
    $(box).hide();
  });
  
  // Show just the message that applies
  $($(".box")[$("button").index(event.target)]).show();
});
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.hidden { display:none; }
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="box hidden">box One</div>
<div class="box hidden">box Two</div>
<div class="box hidden">box Three</div>

<button type="button">One</button>
<button type="button">Two</button>
<button type="button">Three</button>

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

https://stackoverflow.com/questions/67729789

复制
相关文章
jQuery函数的使用
上述代码将从Google的CDN中加载jQuery库。确保将其放在<head>标签或页面内容的顶部。
堕落飞鸟
2023/05/18
1.5K0
使用jQuery来创建Silverlight
使用jQuery来创建Silverlight jQuery已经成为了VS2010内置支持的JavaScript脚本框架了,小巧实用。这里看看怎么用jQuery来在页面中创建一个Silverlight。( 呵呵,有一种swfobject的感觉了 ) jquery.silverlight.js jQuery.fn.extend({     silverlight: function(opts) {         _opts = jQuery.extend({             background
用户1172164
2018/03/01
9540
[UWP]如何使用代码创建DataTemplate(或者ControlTemplate)
在UWP中DataTemplate是一个十分重要的功能,并且几乎无处不在,例如DataGrid中的DataGridTemplateColumn:
dino.c
2019/01/16
2K0
如何创建对象以及jQuery中创建对象的方式(推荐)
在实际使用当中,字面量创建对象虽然很有用,但是它并不能满足我们的所有需求,我们希望能够能够和其他后台语言一样创建一个类,然后声明类的实例就能够多次使用,而不用每次使用的时候都要重新创建它,于是,便有了工厂模式的出现。
晓歌
2018/08/15
5K0
如何创建对象以及jQuery中创建对象的方式(推荐)
[UWP]如何使用代码创建DataTemplate(或者ControlTemplate)
在UWP中DataTemplate是一个十分重要的功能,并且几乎无处不在,例如DataGrid中的DataGridTemplateColumn:
dino.c
2019/01/18
1.3K0
[UWP]如何使用代码创建DataTemplate(或者ControlTemplate)
[WPF]如何使用代码创建DataTemplate(或者ControlTemplate)
上一篇文章([UWP]如何使用代码创建DataTemplate(或者ControlTemplate))介绍了在UWP上的情况,这篇文章再稍微介绍在WPF上如何实现。
dino.c
2019/01/18
1.9K0
使用jQuery封装实用函数
一、引言 项目开发中,前端会有一个辅助工具类的js文件,比如cookie的操作,团队成员自己封装的方法。大多数时候,我们开发人员自己都是写一个全局函数,不考虑后期维护人员也会写相同的代码,然后造成代码之间的冲突。之前维护的一段代码如下: var g=function(id){ return document.getElementById(id); }; var $$=function(id){ return document.getElementById(id); }; g("testdi
八哥
2018/01/18
1.3K0
[WPF]如何使用代码创建DataTemplate(或者ControlTemplate)
上一篇文章([UWP]如何使用代码创建DataTemplate(或者ControlTemplate))介绍了在UWP上的情况,这篇文章再稍微介绍在WPF上如何实现。
dino.c
2019/01/17
2.1K0
如何编写高效的jQuery代码(转载)
1. jQuery速度再快,也无法与原生的javascript方法相比,而且建立的jQuery对象包含的信息量很庞大。所以有原生方法可以使用的场合,尽量避免使用jQuery。
用户1518699
2018/10/11
7550
jQuery的animate函数
jQuery提供了一个animate函数,可以通过改变CSS属性来实现一些动画效果。
大江小浪
2018/07/25
1.7K0
如何使用CSS创建高级动画,这个函数必须掌握
我们每天都在网上摸鱼,作为前端开发人员,网站上微妙的细节变化通过比别人会更关注。我一直注意到的一件事是网站上的动画的流畅性。动画对于用户体验来说是非常好的,有时我们可以一些有趣的动画来留住用户。
前端小智@大迁世界
2023/01/06
6.8K0
如何使用CSS创建高级动画,这个函数必须掌握
QString较少用到的接口
空白字符包含:’\t’, ‘\n’, ‘\v’, ‘\f’, ‘\r’和’ '。
Qt君
2019/11/04
8400
jQuery 对AMD的支持(Require.js中如何使用jQuery)
AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一个可用的模块化 JavaScript 的解决方案。
李维亮
2021/07/09
3.5K0
javascript 动态函数如何创建?
JavaScript作为一门动态语言,提供了多种创建动态函数的方法。动态函数的创建允许我们在运行时根据需要生成函数,从而实现灵活的编程和动态逻辑。本文将介绍动态函数的概念,探讨几种常用的方法来创建动态函数,并分享一些动态函数的应用场景。
海拥
2023/06/27
5840
javascript 动态函数如何创建?
点击加载更多

相似问题

如何用较少的代码编写这些函数?

16

创建多个函数较少的类

12

如何使用括号编译较少的代码?

10

如何使用较少行的jQuery id?

23

代码较少的重复表行函数

112
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文