javascript - 用某些特征替换 HTML 中的字符串

标签 javascript jquery replace

我需要将以 http://player.vimeo.com 开头的 img 标记的每个实例替换为另一个网址。

例如,您可能会在页面代码中找到以下内容:

<img src="http://player.vimeo.com/video/4887233">

我正在尝试制作一个 jQuery 脚本,它将找到以 http://player.vimeo.com 开头的每个 img src 并替换 src 与另一个字符串(每个 vimeo 链接都是相同的字符串,本质上是一个变量)。

如何找到 vimeo 链接并确保整个链接被替换,无论长度如何(某些链接会比其他链接长,但始终以相同的字符串开头)?

最佳答案

选择所有带有 attribute starts with selectorimg :

$("img[src^='http://player.vimeo.com]'").each(function(){
    this.src = this.src.replace("player.vimeo.com", "new.url.com");
});

以上内容会将 src 中的 player.vimeo.com 替换为 new.url.com。如果您需要完全设置另一个 src,只需执行 this.src = 'new url';

值得注意的是,当您想要更改 src 等原生属性时,与 attr 相比,each 的性能会好得多,因为可见此jsPerf .

查看demo on jsFiddle .

关于javascript - 用某些特征替换 HTML 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13624625/

相关文章:

javascript - <o :commandScript>: reference namespaced JS function name

javascript - jQuery:选择样式属性?

javascript - jQuery - MaxImage 2.0 和 Cycle - 具有单独循环选项的多个幻灯片

r - 合并具有多个分隔符的列

java替换功能

javascript - 隐藏表格列依赖于多个动态json数组中的按钮

c# - 将变量从服务器端传递到 JavaScript

javascript - JQuery:基于列值的表行显示/隐藏

javascript - Chrome 版本 61 为 document.documentElement.scrollHeight 返回不同的结果

Python:使用列表检查单独列表中的项目,如果存在则替换