从页面收集所有内嵌背景图像
我的目标是使用 jquery 收集插入 html 代码中的所有图像 url,如下所示:
style="background: url(...)"
或者
style="background-image: url(...)"
在第一个示例中可能存在不同的情况(例如添加重复、位置和更改标签的顺序)。
我认为正则表达式将是最好的方法, 但我不太擅长。
谢谢!
My goal is to collect all images urls with jquery that are inserted in the html code like this:
style="background: url(...)"
or
style="background-image: url(...)"
In the first example there may be different cases (like adding repeat, position, and changing the order of the tags).
I suppose regexp will be the best way to do it,
but I'm not very good at it.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以这样做:
这将循环遍历所有设置了内联
style
和background
的元素。请注意,
*=
表示style
中的某个位置有background
关键字。You can do:
This will loop over all elements that have inline
style
andbackground
set to them.Notice that
*=
means wherestyle
hasbackground
keyword somewhere in it.是的。我会选择正则表达式。
这是一个示例:
如果样式中可能存在不属于背景的 url,而背景可能没有图像,则正则表达式应该更复杂,并且为了代码可维护性,我只需添加另一个“if “而不是使用负向前看来制作正则表达式(许多人难以阅读)。
所以,代码将是这样的:
你可以在这个小提琴上玩它:
http://jsfiddle.net/Exceeder/nKPbn/
Yep. I would go with regexp.
Here is an example:
If it is possible to have urls in style that are not part of the background, while background could be without image, the regexp should be more complicated and, for the code maintainability sake, I would simply add another "if" rather than make regexp with negative lookahead (which many people have difficulty to read).
So, the code would be then like this:
You can play with it on this fiddle:
http://jsfiddle.net/Exceeder/nKPbn/