javascript - 切换 jquery offsetParent() 方法

标签 javascript jquery html css

$(document).ready(function(){
    $("button").click(function(){
        $("p").offsetParent().css("background-color", "red");
    });
});
<button>Set background-color</button>
<div style="border:1px solid black;width:70%;position:absolute;left:10px;top:50px">
    <div style="border:1px solid black;margin:50px;background-color:yellow">
        <p>Click button to set the background color of the first positioned parent element of this paragraph.</p>
    </div>
</div>

这里我应用背景颜色来偏移父级,但我也希望它进行切换,当我单击按钮时背景颜色为红色,但是当我再次单击时应该使用切换方法更改背景颜色

最佳答案

实现此目的的最简单方法是将要添加/删除的样式放入它自己的 CSS 类中,然后调用 toggleClass()。以这种方式将您的样式规则保留在 HTML 和 JS 代码之外(即在单独的样式表中)也是更好的做法。试试这个:

.on {
    background-color: red;
}
$("button").click(function() {
    $("p").offsetParent().toggleClass('on')
});

Working example

关于javascript - 切换 jquery offsetParent() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38284183/

相关文章:

javascript - 单击包含 div 时如何弹出 img(图片库)?

javascript - 触发需要查找通过 AJAX 加载到页面中的元素的函数

javascript - 旧浏览器是否支持 HTML 5 数据属性?

javascript - 使用 Jquery 检查多个复选框

javascript - 如何关闭 Kendo 下拉列表的缓存

javascript - 为什么这个 JS 按钮只添加一次 div?如果我再次点击没有任何反应

javascript - 如何测量javascript中的字体指标?是否有任何 API 可用于 C# 中的 GetCellDescent 等文本指标?

javascript - 在其他任何事情之前加载特定图像

jquery - 使用 jQuery 滚动到特定元素

javascript - 如何使用 jQuery masonry 插件放置图像开始