Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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_Css - Fatal编程技术网

Javascript 单击链接时切换div

Javascript 单击链接时切换div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,现在发生的是,每当我有另一个链接的例子,它也会使用这个链接作为切换按钮。我只想切换编辑模式切换隐藏div的开/关。因此,我尝试更改$(“a”)。单击(函数()切换到$(“切换”)。单击(函数()和切换编辑模式切换编辑模式',但不起作用。有什么想法吗 HTML JS 你想要这个 <li><a class="toggle">Toggle Edit Mode</a> $(".toggle").click(function () { $("div").tog

现在发生的是,每当我有另一个链接的例子,它也会使用这个链接作为切换按钮。我只想切换编辑模式切换隐藏div的开/关。因此,我尝试更改
$(“a”)。单击(函数()
切换到
$(“切换”)。单击(函数()
切换编辑模式
切换编辑模式',但不起作用。有什么想法吗

HTML

JS

你想要这个

<li><a class="toggle">Toggle Edit Mode</a>

$(".toggle").click(function () {
    $("div").toggleClass("hidden unhidden");
}
  • 切换编辑模式 $(“.toggle”)。单击(函数(){ $(“div”).toggleClass(“隐藏未隐藏”); }
  • 您不能使用
    $(“toggle”)
    ,因为这会查找html标记
    。而是将类
    toggle
    添加到要切换的链接。

    使用“ID”选择器

    一页中可以有许多类(类=…),但每页只有一个id(id=…)。更多信息


    Javascript:

    $(document).ready(function () {
        $("#toggle").click(function () {
            $("div").toggleClass("hidden unhidden");
        });
    });
    
    Html:

    。隐藏{
    显示:无;
    }
    .未隐藏{
    显示:块;
    }
    
    
  • 切换编辑模式

  • 你好
    使用
    .className
    选择器:

    $(".toggle").click(function () {});
    
    您还可以使用jQuery的函数

    $(".toggle").click(function () {
        $("div").toggle();
    });
    

    创建fiddle进行演示。

    这对我来说很有效。允许我显示或隐藏具有相同链接的文本。我将链接与要显示的div相关联。这在具有多条记录的列表中工作,每条记录都有自己的ID

    <a class="showHideToggle div1">View Details</a>
    <div id="div1" style="display:none;">Record 1 details goes here</div>
    
    <a class="showHideToggle div2">View Details</a>
    <div id="div2" style="display:none;">Record 2 details goes here</div>
    
    <script>
        $(document).ready(function () {
            $(".showHideToggle").click(function (ctl) {
                var linkedDivName = $(this).attr('class').replace('showHideToggle ', '');
                var divToToggle = $("#" + linkedDivName);
                //alert('current status: ' + divToToggle.css('display'));
    
                 if (divToToggle.css('display') == 'none') {
                    divToToggle.css("display", "block");
                    $(this).text("Hide Details");
                } else {
                    divToToggle.css("display", "none");
                    $(this).text("Show Details");
                }
            });
        });
    </script>
    
    查看详细信息
    记录1详细信息在这里
    查看详细信息
    记录2详情如下
    $(文档).ready(函数(){
    $(“.showHideToggle”)。单击(函数(ctl){
    var linkedDivName=$(this.attr('class').replace('showHideToggle','');
    var divotogle=$(“#”+linkedDivName);
    //警报(“当前状态:”+divtologgle.css(“显示”);
    if(divtologgle.css('display')='none'){
    css(“显示”、“块”);
    $(此).text(“隐藏详细信息”);
    }否则{
    css(“显示”、“无”);
    $(此).text(“显示详细信息”);
    }
    });
    });
    
    $(“toggle”)正在查找的是标记,而不是.toggle类。您不需要两个类来显示和隐藏。一个可以完成此任务。您还应该发布有效的markupA哈哈,忘记了。在JS中,我以前尝试过使用类toggle,但不起作用,因为我使用了toggle而不是.toggle。谢谢
    <li><a id="toggle">Toggle Edit Mode</a></li>
    
    <div class="hidden rightButton">hello</div>
    
    $(".toggle").click(function () {});
    
    $(".toggle").click(function () {
        $("div").toggle();
    });
    
    <a class="showHideToggle div1">View Details</a>
    <div id="div1" style="display:none;">Record 1 details goes here</div>
    
    <a class="showHideToggle div2">View Details</a>
    <div id="div2" style="display:none;">Record 2 details goes here</div>
    
    <script>
        $(document).ready(function () {
            $(".showHideToggle").click(function (ctl) {
                var linkedDivName = $(this).attr('class').replace('showHideToggle ', '');
                var divToToggle = $("#" + linkedDivName);
                //alert('current status: ' + divToToggle.css('display'));
    
                 if (divToToggle.css('display') == 'none') {
                    divToToggle.css("display", "block");
                    $(this).text("Hide Details");
                } else {
                    divToToggle.css("display", "none");
                    $(this).text("Show Details");
                }
            });
        });
    </script>