Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用按钮显示/隐藏div_Javascript_Jquery_Html - Fatal编程技术网

Javascript 使用按钮显示/隐藏div

Javascript 使用按钮显示/隐藏div,javascript,jquery,html,Javascript,Jquery,Html,我有一个带有按钮的HTML页面,按下按钮时隐藏内容。我使用的是jquery代码,我已经将其捆绑到我的HTML页面中。当我按下按钮以在隐藏的div中显示内容时,它可以找到,但是当我再次按下按钮以隐藏内容时,什么也没有发生。如果有人能帮助我,那就太好了。此外,我如何能够针对多个按钮。我是否会粘贴相同的jquery代码并将其标记为“2”,然后再标记为“3”,以此类推?任何有效的例子都会很好。这是我的密码: HTML: $(文档).ready(函数(){ $(“#扰流板1”).hide(); $(“#

我有一个带有按钮的HTML页面,按下按钮时隐藏内容。我使用的是jquery代码,我已经将其捆绑到我的HTML页面中。当我按下按钮以在隐藏的div中显示内容时,它可以找到,但是当我再次按下按钮以隐藏内容时,什么也没有发生。如果有人能帮助我,那就太好了。此外,我如何能够针对多个按钮。我是否会粘贴相同的jquery代码并将其标记为“2”,然后再标记为“3”,以此类推?任何有效的例子都会很好。这是我的密码:

HTML:


$(文档).ready(函数(){
$(“#扰流板1”).hide();
$(“#按钮1”)。单击(函数(){
元(300元);;
});
});
冒险家&x25BC;
一,。爬树

二,。滚下一座真正的大山

三,。野营

四,。筑巢

五,。撇石头

提前感谢您的帮助或建议。

请改用

更新

关于拥有多个按钮的想法,我提出了一种方法,您应该尝试使用
classes
而不是
IDs
作为按钮,并向
divs
提供您想要切换的相同
ID
。这可能需要一些设计问题,但您可以管理,这只是向前发展的基本指导原则

由于标记对于多个div来说太长,所以我只发布

JQuery

$(document).ready(function () {
    $(".category").click(function () {
        $(".show").hide();
        var divToShow = $(this).text().split(" ")[0];
        $("#" + divToShow).toggle('slow');
    });
});

改用

更新

关于拥有多个按钮的想法,我提出了一种方法,您应该尝试使用
classes
而不是
IDs
作为按钮,并向
divs
提供您想要切换的相同
ID
。这可能需要一些设计问题,但您可以管理,这只是向前发展的基本指导原则

由于标记对于多个div来说太长,所以我只发布

JQuery

$(document).ready(function () {
    $(".category").click(function () {
        $(".show").hide();
        var divToShow = $(this).text().split(" ")[0];
        $("#" + divToShow).toggle('slow');
    });
});

对于多按钮事件。为按钮指定一个类名,以便可以按类进行选择

$('button.toggle-div').click(function(){...});
至于可见性切换,有多种方法

  • jQuery
    中使用
    toggle()。(最明显的选择,但实际上我们也可以……)

  • 使用
    toggleClass()
    添加/删除具有
    display:none
    css规则的类。(更灵活的是,您可以切换其他css样式,如字体颜色、背景等)

  • 使用一些 双向绑定JavaScript库,如knockoutjs或angular。 (对于一个小应用程序来说,这可能是一种过度的杀伤力。但它会 如果是大规模的,一定要减少编码量。)


  • 对于多按钮事件。为按钮指定一个类名,以便可以按类进行选择

    $('button.toggle-div').click(function(){...});
    
    至于可见性切换,有多种方法

  • jQuery
    中使用
    toggle()。(最明显的选择,但实际上我们也可以……)

  • 使用
    toggleClass()
    添加/删除具有
    display:none
    css规则的类。(更灵活的是,您可以切换其他css样式,如字体颜色、背景等)

  • 使用一些 双向绑定JavaScript库,如knockoutjs或angular。 (对于一个小应用程序来说,这可能是一种过度的杀伤力。但它会 如果是大规模的,一定要减少编码量。)

  • 演示:

    演示:

    改用切换:

    $('#button1').bind("click",function(){
        $("#spoiler1").toggle("fast");
    });
    
    改为使用切换:

    $('#button1').bind("click",function(){
        $("#spoiler1").toggle("fast");
    });
    

    “但是,当我再次按下按钮隐藏内容时,什么也没有发生”。为什么要这样做?您的代码所做的只是在单击时显示一个div。“但是,当我再次按下按钮隐藏内容时,什么也没有发生”。为什么要这样做?您的代码所做的只是单击时显示一个div。我认为Chrome在hide()和show()方面存在问题。您必须使用$(选择器).css('display','none')来隐藏,.css('display','block')来显示。@MarloC Chrome与
    hide()
    &
    show()
    无关,它可以与任何浏览器配合使用!只是说说而已。我曾经使用show()和hide(),直到我发现它在特定的浏览器中不起作用。不记得是FF还是Chrome。顺便说一句,我没有投你反对票。@MarloC没关系,但是
    show()
    .hide()
    可以在任何浏览器中使用,我从来没有发现它在任何浏览器中都不起作用。实际上,它是它的一个特定版本。他们现在更新了它,在当前版本上运行良好。我在开发一个网站,不得不使用css('display','block')等。我认为Chrome在hide()和show()方面存在问题。您必须使用$(选择器).css('display','none')来隐藏,.css('display','block')来显示。@MarloC Chrome与
    hide()
    &
    show()
    无关,它可以与任何浏览器配合使用!只是说说而已。我曾经使用show()和hide(),直到我发现它在特定的浏览器中不起作用。不记得是FF还是Chrome。顺便说一句,我没有投你反对票。@MarloC没关系,但是
    show()
    .hide()
    可以在任何浏览器中使用,我从来没有发现它在任何浏览器中都不起作用。实际上,它是它的一个特定版本。他们现在更新了它,在当前版本上运行良好。我在开发一个网站,不得不使用css(‘显示’、‘块’)等等。