Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.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/2/jquery/72.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,除非它有来自onclick的源_Javascript_Jquery_Onclick - Fatal编程技术网

Javascript 隐藏div,除非它有来自onclick的源

Javascript 隐藏div,除非它有来自onclick的源,javascript,jquery,onclick,Javascript,Jquery,Onclick,如果有一个源来自单击.item,那么如何仅显示.model容器中的.model item div 示例:如果我单击了第一个项目,则只有项目img div会显示,因为它是从函数接收源的唯一div。项目文本和项目子文本都将保持隐藏状态,因为它们没有源 $.container.onclick、.item、函数{ var t=$this.closest.item; $item-text.textt.find.item-text.text; $item-sub-text.textt.find.item-

如果有一个源来自单击.item,那么如何仅显示.model容器中的.model item div

示例:如果我单击了第一个项目,则只有项目img div会显示,因为它是从函数接收源的唯一div。项目文本和项目子文本都将保持隐藏状态,因为它们没有源

$.container.onclick、.item、函数{ var t=$this.closest.item; $item-text.textt.find.item-text.text; $item-sub-text.textt.find.item-sub-text.text; var a=t.find.item-img.attrsrc; $item-img.cssbackground-image,'url'+a+''; }; .身体{ 显示器:flex; } 容器 .莫代尔{ 显示器:flex; 弯曲方向:立柱; 填充:20px; } .集装箱{ 边框:1px纯蓝色; } .莫代尔{ 背景:eee } 项目 .模态项{ 宽度:50px; 高度:50px; 光标:指针; 边框:1px实心; } .项目img{ 高度:50px; 宽度:50px; 边界:无; } 项目img{ 背景尺寸:包含; 背景重复:无重复; 背景位置:中心; }

文本

子文本

您可以使用隐藏或显示函数jQuery

function checkShowHide(text, ele) {
  if (text !== '') {
    $(ele).show();
    $(ele).text(text);
  } else {
    $(ele).hide();
  }
}
$(".container").on("click", ".item", function() {
  var t = $(this).closest(".item");
  var itemText = t.find(".item-text").text();
  var itemSubText = t.find(".item-sub-text").text()
  var itemBG = t.find(".item-img").attr("src");
  checkShowHide(itemText, '#item-text');
  checkShowHide(itemSubText, '#item-sub-text');

    var a = t.find(".item-img").attr("src");
  if (a !== '') {
    $("#item-img").show();
    $("#item-img").css("background-image", 'url("' + a + '")'); 
  } else {
    $("#item-img").hide();
  }

});
这是我的解决办法。您可以签入我的代码笔: