Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.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 如果类名与id名相同,脚本如何读取?_Javascript_Html - Fatal编程技术网

Javascript 如果类名与id名相同,脚本如何读取?

Javascript 如果类名与id名相同,脚本如何读取?,javascript,html,Javascript,Html,假设您希望显示与其父元素的id具有相同类的子元素,我建议: <script type="text/javascript"> $(document).ready(function() { $("#cat1").click(function(){ $(".cat1").show(); // <----------| Maybe this is corect .cat1 $("#cat1").show()

假设您希望显示与其父元素的
id
具有相同类的子元素,我建议:

<script type="text/javascript">
    $(document).ready(function() {

        $("#cat1").click(function(){ 

            $(".cat1").show(); // <----------|  Maybe this is corect .cat1
            $("#cat1").show(); // <--|   
            $("#cat1").show(); // <--| : Problem 2

        });
    });
</script>

或者,如果元素不是同级元素,则:

// selects all elements with an `id` attribute:
$('[id]').each(function(){
    // iterates over them, finds those descendants whose class is equal
    // the id of the ancestor, and shows them:
    $(this).find('.' + this.id).show();
});

要隐藏之前显示的元素,请使用类来标识相关元素,选择具有该类的元素并将其全部隐藏。然后显示相关元素,例如:

$('[id]').on('click', function(){
    $('.' + this.id).show();
});
这就是你需要的吗

$('[id]').on('click', function(){
    $('.canBeToggled').hide();
    $('.' + this.id).show();
});
单击我以显示.cat1
空气
大海
火
$(“#cat1”)。单击(函数(){
$('..+this.id).show();
});

什么?我不知道你(试图?)问我们什么;什么是“这个”是“好的”(在问题1中),还是“错的”(在问题2中)?如果你不知道,我现在是困难的,它可能是困难的,也可能不是困难的,但我不知道你在说什么或指什么。你能解释一下你想做什么,或者你想发生什么吗?我想让脚本看看这些类的id是否相同,如果相同,然后显示这些类。我只是问需要做些什么改变才能使这些工作正常托马斯·思克,所以当我有声望的时候我会投票给你我需要问你。可以给我看一个完整的脚本,因为我不在乎Javascript,如果不一样的话有多干净?一个“完整的脚本”做什么?我不会投票支持这个问题,因为它被问得非常糟糕,请随意接受,或者投票支持我的答案,不管你认为合适与否。你所说的“如果不一样有多干净”是什么意思?如果类与id不一样,如何隐藏?或者cleanVery-thenks工作得很好如果你有一个更好的脚本,那么如何删除这个类如果与id不同呢?我不确定我是否理解,但是如果它们嵌套在#cat1中,并且你想删除元素:$('#cat1').find(':not(.+$('#cat1')[0].id+').remove();
$('[id]').on('click', function(){
    $('.canBeToggled').hide();
    $('.' + this.id).show();
});
<div id="cat1">click me to show .cat1</div>
<div class="cat1" style="display:none;">Air</div>
<div class="cat1" style="display:none;">Sea</div>
<div class="cat1" style="display:none;">Fire</div>


$("#cat1").click(function(){ 
  $('.'+this.id).show();
});