Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/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 如何切换a<;的可见性;旁白>;元素onclick?_Javascript_Jquery_Css_Html - Fatal编程技术网

Javascript 如何切换a<;的可见性;旁白>;元素onclick?

Javascript 如何切换a<;的可见性;旁白>;元素onclick?,javascript,jquery,css,html,Javascript,Jquery,Css,Html,我有一个 我希望能够隐藏它,并通过连续单击按钮再次显示它,但我的代码工作不正常。它只是隐藏元素,在连续单击时不会再次显示它 $(文档).ready(函数(){ $(“#隐藏”)。在(“单击”,函数()上{ $('aside')。切换(“滑动”,函数(){ var visibilityStatus=$('aside').attr(“数据可见”); 警报(可视性状态); $('aside').attr('data-visible',!visibilityStatus); }); }) }) .co

我有一个

我希望能够隐藏它,并通过连续单击按钮再次显示它,但我的代码工作不正常。它只是隐藏元素,在连续单击时不会再次显示它

$(文档).ready(函数(){
$(“#隐藏”)。在(“单击”,函数()上{
$('aside')。切换(“滑动”,函数(){
var visibilityStatus=$('aside').attr(“数据可见”);
警报(可视性状态);
$('aside').attr('data-visible',!visibilityStatus);
});
})
})
.content{
显示器:flex;
弯曲方向:行;
}
旁白{
显示器:flex;
弯曲方向:立柱;
左边距:1px;
}
旁白[数据可见=“假”]{
显示:无!重要;
弯曲方向:无;
}

我的页面
旁白内容
躲开

代码笔按预期工作,对css进行以下更改,只需将一个定义了数据属性的
放在旁边,并从代码中切换相同的属性,就像您已经做的那样

aside[data-visible="true"] { 
  display: flex; 
  flex-direction: column;
} 

-您的已编辑版本,在CSS内部仅定义了一个侧边

代码笔可以按照预期工作,对CSS进行以下更改,只需定义一个具有数据属性的侧边
,并从代码中切换相同的属性即可

aside[data-visible="true"] { 
  display: flex; 
  flex-direction: column;
} 

-您的编辑版本,在CSS中只定义了一个您实际上不需要的旁白

  • css
    旁边的[data visible=“false”]
  • 或者使用slide
    功能
    $(“aside”)。切换(“slide”)
    就足够了
  • 但是代码的问题是
    var visibilityStatus=$('aside')。attr(“数据可见”)
    是一个字符串,而不是布尔值。通过显式地将其转换为布尔值,代码将按预期工作

    var visibilityStatus = $('aside').attr("data-visible") == true
    
    javascript中将“false”转换为
    true
    被描述为强制,有时会导致意外值

    $(文档).ready(函数(){
    $(“#隐藏”)。在(“单击”,函数()上{
    $('aside')。切换(“滑动”,函数(){
    var visibilityStatus=$('aside').attr(“数据可见”)==true;
    控制台日志(visibilityStatus);
    $('aside').attr('data-visible',!visibilityStatus);
    });
    })
    })
    .content{
    显示器:flex;
    弯曲方向:行;
    }
    旁白{
    显示器:flex;
    弯曲方向:立柱;
    左边距:1px;
    }
    旁白[数据可见=“假”]{
    显示:无!重要;
    弯曲方向:无;
    }
    
    我的页面
    旁白内容
    躲开
    
    您实际上不需要

  • css
    旁边的[data visible=“false”]
  • 或者使用slide
    功能
    $(“aside”)。切换(“slide”)
    就足够了
  • 但是代码的问题是
    var visibilityStatus=$('aside')。attr(“数据可见”)
    是一个字符串,而不是布尔值。通过显式地将其转换为布尔值,代码将按预期工作

    var visibilityStatus = $('aside').attr("data-visible") == true
    
    javascript中将“false”转换为
    true
    被描述为强制,有时会导致意外值

    $(文档).ready(函数(){
    $(“#隐藏”)。在(“单击”,函数()上{
    $('aside')。切换(“滑动”,函数(){
    var visibilityStatus=$('aside').attr(“数据可见”)==true;
    控制台日志(visibilityStatus);
    $('aside').attr('data-visible',!visibilityStatus);
    });
    })
    })
    .content{
    显示器:flex;
    弯曲方向:行;
    }
    旁白{
    显示器:flex;
    弯曲方向:立柱;
    左边距:1px;
    }
    旁白[数据可见=“假”]{
    显示:无!重要;
    弯曲方向:无;
    }
    
    我的页面
    旁白内容
    躲开
    
    $(文档).ready(函数(){
    $(“#隐藏”)。在(“单击”,函数()上{
    $('aside')。切换(“滑动”,函数(){
    var visibilityStatus=$('aside').attr(“数据可见”);
    $('aside').attr('data-visible',visibilityStatus);
    });
    })
    })
    .content{
    显示器:flex;
    弯曲方向:行;
    }
    旁白{
    显示器:flex;
    弯曲方向:立柱;
    左边距:1px;
    }
    旁白[数据可见=“假”]{
    显示:无!重要;
    弯曲方向:无;
    }
    
    我的页面
    旁白内容
    躲开
    
    $(文档).ready(函数(){
    $(“#隐藏”)。在(“单击”,函数()上{
    $('aside')。切换(“滑动”,函数(){
    var visibilityStatus=$('aside').attr(“数据可见”);
    $('aside').attr('data-visible',visibilityStatus);
    });
    })
    })
    .content{
    显示器:flex;
    弯曲方向:行;
    }
    旁白{
    显示器:flex;
    弯曲方向:立柱;
    左边距:1px;
    }
    旁白[数据可见=“假”]{
    显示:无!重要;
    弯曲方向:无;
    }
    
    我的页面
    旁白内容
    躲开
    
    属性
    数据可见
    存在的另一个原因是,还是仅用于此目的?在[data visible=“true”]{display:flex;}@Steve0旁边添加一个类,它的存在仅用于此目的。同时删除!显示器上的重要信息:无;属性
    数据可见
    存在的另一个原因是,还是仅用于此目的?在[data visible=“true”]{display:flex;}@Steve0旁边添加一个类,它仅用于该目的。同时删除!显示器上的重要信息:无;你已经准备好了。