Javascript 创建一个包含已单击div的id的变量

Javascript 创建一个包含已单击div的id的变量,javascript,jquery,variables,Javascript,Jquery,Variables,有人知道如何创建一个包含单击的div的id的变量吗 我想隐藏页面加载上的所有内容包装,除了第一个,然后当.square被单击以显示与已单击id具有相同类的div时,如果你写下id,这没有多大意义,但如果你看我的小提琴,那么它应该有意义 $(“#内容包装器”).hide(); $(“.square”)。单击(函数(){ var id_name=$(this).attr(id); if$('#内容包装器').hasClass(id#U名称){ $(this.fadeIn(); } }); 内容1

有人知道如何创建一个包含单击的div的id的变量吗

我想隐藏页面加载上的所有内容包装,除了第一个,然后当.square被单击以显示与已单击id具有相同类的div时,如果你写下id,这没有多大意义,但如果你看我的小提琴,那么它应该有意义

$(“#内容包装器”).hide();
$(“.square”)。单击(函数(){
var id_name=$(this).attr(id);
if$('#内容包装器').hasClass(id#U名称){
$(this.fadeIn();
}
}); 
内容1
内容2
内容3
内容4
内容5
内容6
内容7
内容8

更改
内容包装器的元素,使其包含类而不是ID,因为ID应该是唯一的。但是,您可以使用某种前缀来标识内容,如
content-

<div class="content-wrapper" id="content-c1">Content 1</div>
<div class="content-wrapper" id="content-c2">Content 2</div>
<div class="content-wrapper" id="content-c3">Content 3</div>
<div class="content-wrapper" id="content-c4">Content 4</div>
<div class="content-wrapper" id="content-c5">Content 5</div>
<div class="content-wrapper" id="content-c6">Content 6</div>
<div class="content-wrapper" id="content-c7">Content 7</div>
<div class="content-wrapper" id="content-c8">Content 8</div>
请注意以下部分

$(".content-wrapper").hide();
这一点很重要,因为我们要确定我们希望隐藏所有包含
内容包装
的元素,而不是id
内容包装


.

更改
内容包装器的元素,使其包含类而不是ID,因为ID应该是唯一的。但是,您可以使用某种前缀来标识内容,如
content-

<div class="content-wrapper" id="content-c1">Content 1</div>
<div class="content-wrapper" id="content-c2">Content 2</div>
<div class="content-wrapper" id="content-c3">Content 3</div>
<div class="content-wrapper" id="content-c4">Content 4</div>
<div class="content-wrapper" id="content-c5">Content 5</div>
<div class="content-wrapper" id="content-c6">Content 6</div>
<div class="content-wrapper" id="content-c7">Content 7</div>
<div class="content-wrapper" id="content-c8">Content 8</div>
请注意以下部分

$(".content-wrapper").hide();
这一点很重要,因为我们要确定我们希望隐藏所有包含
内容包装
的元素,而不是id
内容包装


.

更改
内容包装器的元素,使其包含类而不是ID,因为ID应该是唯一的。但是,您可以使用某种前缀来标识内容,如
content-

<div class="content-wrapper" id="content-c1">Content 1</div>
<div class="content-wrapper" id="content-c2">Content 2</div>
<div class="content-wrapper" id="content-c3">Content 3</div>
<div class="content-wrapper" id="content-c4">Content 4</div>
<div class="content-wrapper" id="content-c5">Content 5</div>
<div class="content-wrapper" id="content-c6">Content 6</div>
<div class="content-wrapper" id="content-c7">Content 7</div>
<div class="content-wrapper" id="content-c8">Content 8</div>
请注意以下部分

$(".content-wrapper").hide();
这一点很重要,因为我们要确定我们希望隐藏所有包含
内容包装
的元素,而不是id
内容包装


.

更改
内容包装器的元素,使其包含类而不是ID,因为ID应该是唯一的。但是,您可以使用某种前缀来标识内容,如
content-

<div class="content-wrapper" id="content-c1">Content 1</div>
<div class="content-wrapper" id="content-c2">Content 2</div>
<div class="content-wrapper" id="content-c3">Content 3</div>
<div class="content-wrapper" id="content-c4">Content 4</div>
<div class="content-wrapper" id="content-c5">Content 5</div>
<div class="content-wrapper" id="content-c6">Content 6</div>
<div class="content-wrapper" id="content-c7">Content 7</div>
<div class="content-wrapper" id="content-c8">Content 8</div>
请注意以下部分

$(".content-wrapper").hide();
这一点很重要,因为我们要确定我们希望隐藏所有包含
内容包装
的元素,而不是id
内容包装


.

您的代码有四个问题:

  • $(“#内容包装器”).hide()
    将仅隐藏具有该ID的第一个元素,因为ID必须是唯一的。改用公共类

  • var id\u name=$(this).attr(id)<代码>id
    是一个未定义的变量。您可能希望传递字符串
    “id”
    ,或者更好,只需访问DOM元素的属性:
    this.id

  • if$('#content wrapper').hasClass(id_name){
    是一个语法错误。必须将该条件放入parhenthesis中:

    if ($('#content-wrapper').hasClass(id_name)) {
    
  • 但是,仅此一点无法使条件起作用,因为同样,
    #content wrapper
    将只选择第一个元素。只需按类选择相应的元素:

     $('.' + this.id).fadeIn(); 
    
    您还可以添加
    .content wrapper
    ,以实现更精细的过滤:

     $('.content-wrapper.' + this.id).fadeIn(); 
    
  • 固定代码:

    $('.content-wrapper').hide(); // give that class to all elements instead of the ID
    
    $(".square").click(function() {
       $('.' + this.id).fadeIn();  
    }); 
    

    您的代码有四个问题:

  • $(“#内容包装器”).hide();
    将仅隐藏具有该ID的第一个元素,因为ID必须是唯一的。请改用公共类

  • var id\u name=$(this).attr(id);
    id
    是一个未定义的变量。您可能希望传递字符串
    “id”
    ,或者更好,只需访问DOM元素的属性:
    this.id

  • if$('#content wrapper').hasClass(id_name){
    是一个语法错误。必须将该条件放入parhenthesis中:

    if ($('#content-wrapper').hasClass(id_name)) {
    
  • 但是,仅此一点无法使条件起作用,因为同样,
    #content wrapper
    将只选择第一个元素。只需按类选择相应的元素:

     $('.' + this.id).fadeIn(); 
    
    您还可以添加
    .content wrapper
    ,以实现更精细的过滤:

     $('.content-wrapper.' + this.id).fadeIn(); 
    
  • 固定代码:

    $('.content-wrapper').hide(); // give that class to all elements instead of the ID
    
    $(".square").click(function() {
       $('.' + this.id).fadeIn();  
    }); 
    

    您的代码有四个问题:

  • $(“#内容包装器”).hide();
    将仅隐藏具有该ID的第一个元素,因为ID必须是唯一的。请改用公共类

  • var id\u name=$(this).attr(id);
    id
    是一个未定义的变量。您可能希望传递字符串
    “id”
    ,或者更好,只需访问DOM元素的属性:
    this.id

  • if$('#content wrapper').hasClass(id_name){
    是一个语法错误。必须将该条件放入parhenthesis中:

    if ($('#content-wrapper').hasClass(id_name)) {
    
  • 但是,仅此一点无法使条件起作用,因为同样,
    #content wrapper
    将只选择第一个元素。只需按类选择相应的元素:

     $('.' + this.id).fadeIn(); 
    
    您还可以添加
    .content wrapper
    ,以实现更精细的过滤:

     $('.content-wrapper.' + this.id).fadeIn(); 
    
  • 固定代码:

    $('.content-wrapper').hide(); // give that class to all elements instead of the ID
    
    $(".square").click(function() {
       $('.' + this.id).fadeIn();  
    }); 
    

    您的代码有四个问题:

  • $(“#内容包装器”).hide();
    将仅隐藏具有该ID的第一个元素,因为ID必须是唯一的。请改用公共类

  • var id\u name=$(this).attr(id);
    id
    是一个未定义的变量。您可能希望传递字符串
    “id”
    ,或者更好,只需访问DOM元素的属性:
    this.id

  • if$('#content wrapper').hasClass(id_name){
    是一个语法错误。必须将该条件放入parhenthesis中:

    if ($('#content-wrapper').hasClass(id_name)) {