如果存在 class - jquery,则删除 Attr 并添加它
Delete Attr and add it if class exist - jquery
你好,这个小代码有问题:
$(".delayDiv").each(function(){
var img_attr = $(this).attr('style');
$(this).attr('style', '');
if ($(".delayDiv").hasClass("visible")) {
$(this).attr('style', img_attr);
}
});
我想做的是:
- 寻找 Divs
class="delayDiv"
- 然后将样式属性保存在变量中
- 然后,在同一个 div 中搜索 class="visible"(我添加了这个
class 使用 viewportChecker.js,这意味着 class 仅在以下情况下添加
Div 在视口内。
- 如果class存在,请重新添加样式内容!
DIV outsite the viewport: <div class="backImg"></div>
DIV inside the viewport: <div class="backImg visible"></div>
感谢您的帮助。
仅当元素没有 'visible'
class.
时才删除样式
$(document).ready(function(){
$(".delayDiv").each(function(){
if (!$(".delayDiv").hasClass("visible")) {
$(this).removeAttr('style', '');
}
});
})
您只需要一个 :not()
选择器和 removeAttr()
即可从所有没有可见 class[= 的主要 class 中删除样式13=]
$(".delayDiv:not(.visible)").removeAttr('style')
你好,这个小代码有问题:
$(".delayDiv").each(function(){
var img_attr = $(this).attr('style');
$(this).attr('style', '');
if ($(".delayDiv").hasClass("visible")) {
$(this).attr('style', img_attr);
}
});
我想做的是:
- 寻找 Divs
class="delayDiv"
- 然后将样式属性保存在变量中
- 然后,在同一个 div 中搜索 class="visible"(我添加了这个 class 使用 viewportChecker.js,这意味着 class 仅在以下情况下添加 Div 在视口内。
- 如果class存在,请重新添加样式内容!
DIV outsite the viewport:
<div class="backImg"></div>
DIV inside the viewport:
<div class="backImg visible"></div>
感谢您的帮助。
仅当元素没有 'visible'
class.
$(document).ready(function(){
$(".delayDiv").each(function(){
if (!$(".delayDiv").hasClass("visible")) {
$(this).removeAttr('style', '');
}
});
})
您只需要一个 :not()
选择器和 removeAttr()
即可从所有没有可见 class[= 的主要 class 中删除样式13=]
$(".delayDiv:not(.visible)").removeAttr('style')