我正在尝试使用 js 和 jquery 编写一个浏览器扩展,隐藏所有图像(所有 img 元素+任何元素的背景图像),并且如果用户想要在图像上显示图像,还可以选择显示图像。
到目前为止,我已尝试使用以下内容隐藏正文中所有匹配的元素:
$(document).ready(function() {
$('body').find("*").each(function() {
imageHider($(this)); // my custom function
bgImageHider($(this)); // also this is customized
});
});
但是有些图像没有隐藏,因为它们没有完成加载。所以我这样做了:
$(window).load(function() {
$('body').find("*").each(function() {
imageHider($(this));
bgImageHider($(this));
});
});
但这会导致图像显示一段时间。我怎样才能在没有任何延迟的情况下执行此操作,即在某些时刻不显示图像?
是否可以同时触发 onready
和 onload
事件?
最佳答案
$("img").hide()
更有意义 - 将其放在 </body>
之前底部的脚本标记中
更快:
<style>img { display:none }</style>
如果您希望它们占用空间,请使用
<style>img { visibility:hidden }</style>
如果你在某个函数中,你可以这样做
if($(this).is("img")) $(this).hide();
关于javascript - 毫不拖延,如何用js或jquery隐藏body中的所有图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39211373/