是否可以使用 JQuery 将更改绑定(bind)到元素的样式?
这是我的代码:
$(".bnotify").on("change",$(".bnotify").css("display"),function(){
alert("changed");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="bnotify" style="width:20px;height:20px;background:red"></div>
<input type="submit" onclick="$('.bnotify').toggle()">
那么有没有办法在 .bnotify 的显示变化时显示警报?
非常感谢您花费宝贵的时间来解决我的问题。
非常感谢您的帮助。
最佳答案
不,你不能。
问题是$('.selector').css(<propName>)
返回一个字符串,您无法真正将其与事实绑定(bind),即它应该与样式属性相关。
如果你确实想观察某个DOM节点的变化,可以使用 MutationObserver ,但不要忘记过滤突变,因为这可能会影响应用程序的性能。
如果你只有一个回调,它可以影响某个 DOM 节点,那么你可以选择一种简化的方法,只创建一个类似通知回调工厂的东西:
var createNotificationCb = function(cb, message) {
return function() {cb.apply(this, arguments);
alert(message)};
};
关于javascript - JQuery 绑定(bind)样式更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48097770/