我正在尝试使用show()显示<img>
和<a>
目前它只显示一个或另一个,以最后一个为中心。在下面的代码中,它将是html(img).show()
,因为它来自之后。执行$('.showimagediv').html(div,img).show();
具有相同的效果。试图将两个语句组合成一个变量:
var img = ($('<a />', {href : this.getAttribute("data-permaLink"), 'class': 'permaLinkDiv'}),$('<img />', {src : this.getAttribute("data-url"), 'class': 'fullScreenimg'}));
只会导致<img>
出现。有谁知道如何同时展示两者?
var imgToggle=false;
$('.box').on('click', function() {
var img = $('<img />', {src : this.getAttribute("data-url"), 'class': 'fullScreenimg'});
var div = $('<a />', {href : this.getAttribute("data-permaLink"), 'class': 'permaLinkDiv'});
if(imgToggle==true){
$('.showimagediv').html(img).hide();
imgToggle=false;
}
if(imgToggle==false){
$('.showimagediv').html(div).show();
$('.showimagediv').html(img).show();
imgToggle=true;
}
})
$('.showimagediv').on('click', function() {
var img = $('<img />', {src : this.getAttribute("data-url"), 'class': 'fullScreenimg'});
var div = $('<a />', {href : this.getAttribute("data-permaLink"), 'class': 'permaLinkDiv'});
if(imgToggle==true){
$('.showimagediv').html(img).hide();
divToggle=false;
}
})
答案 0 :(得分:2)
您可以使用display:none
添加或删除css类来显示您的div。这是一个非常简单而且好的方式。
示例 CSS: .hide{display:none;}
$('div').add('img').addClass('hide'); //or
$('div').add('img').removeClass('hide');