Javascript JS如何获取所有img src标记

Javascript JS如何获取所有img src标记,javascript,twitter,Javascript,Twitter,我想从twitter上的每个获取SRC 它适用于其他页面,但不适用于twitter。最后我做到了 let n = document.getElementsByTagName("img"); for(tip of n){ console.log(tip.src); } 使用setInterval,twitter也可以动态加载内容,因此使用setInterval,我可以获得所有这些新结果。(不使用setInterval我怎么能做到这一点?) 另外,出于某种奇怪的原因,这幅画没有改变。它不

我想从twitter上的每个
获取SRC

它适用于其他页面,但不适用于twitter。最后我做到了

let n = document.getElementsByTagName("img");

for(tip of n){
    console.log(tip.src);
}
使用setInterval,twitter也可以动态加载内容,因此使用setInterval,我可以获得所有这些新结果。(不使用setInterval我怎么能做到这一点?)

另外,出于某种奇怪的原因,这幅画没有改变。它不会更新

更新:

let n = document.getElementsByTagName("img");

function example(){
    for(tip of n){
        if(tip.src == "https://abs-0.twimg.com/emoji/v2/svg/1f1ea-1f1f8.svg"){
            tip.src = "https://abs-0.twimg.com/emoji/v2/svg/1f3f3-fe0f-200d-1f308.svg";
        }
    }
}

setInterval(example, 100);


现在它工作得很好,但是我怎么能在每次不使用setInterval EEE并仅在必要时调用函数的情况下获取新数据呢?

每次需要迭代图像时,都必须加载图像,才能获得“新鲜”的img元素

试试这个

函数示例(){
让n=document.getElementsByTagName(“img”);//移到这里
用于(n的尖端){
如果(tip.src==”https://abs-0.twimg.com/emoji/v2/svg/1f1ea-1f1f8.svg"){
tip.src=”https://abs-0.twimg.com/emoji/v2/svg/1f3f3-fe0f-200d-1f308.svg";
}
}
}
设置间隔(例如,100);

您必须在每次迭代图像时加载图像,以获得“新鲜”的img元素

试试这个

函数示例(){
让n=document.getElementsByTagName(“img”);//移到这里
用于(n的尖端){
如果(tip.src==”https://abs-0.twimg.com/emoji/v2/svg/1f1ea-1f1f8.svg"){
tip.src=”https://abs-0.twimg.com/emoji/v2/svg/1f3f3-fe0f-200d-1f308.svg";
}
}
}
设置间隔(例如,100);

图像并非总是以
img
标签显示

如果你在twitter上看到一些案例,
img
tag的兄弟是一个样式中带有
img
src
的元素。该元素正在显示图像。显然,twitter上的每一张图片都不是这样

但是在这种情况下,你可以改变它的背景

function example(){
let n = document.getElementsByTagName("div");
    for(tip of n){
        console.log(tip.style['background-image']);

        if(tip.style['background-image'] == 'url("https://abs-0.twimg.com/emoji/v2/svg/1f1ea-1f1f8.svg")'){
            tip.style['background-image']= 'url("https://abs-0.twimg.com/emoji/v2/svg/1f3f3-fe0f-200d-1f308.svg")';
        }
    }
}

setInterval(example, 10000);

此外,您必须使用某种间隔来获得稍后加载的结果。或者,您可以使用检测DOM更改,并仅在DOM更改上启动您的函数。

图像并不总是使用
img
标记显示

如果你在twitter上看到一些案例,
img
tag的兄弟是一个样式中带有
img
src
的元素。该元素正在显示图像。显然,twitter上的每一张图片都不是这样

但是在这种情况下,你可以改变它的背景

function example(){
let n = document.getElementsByTagName("div");
    for(tip of n){
        console.log(tip.style['background-image']);

        if(tip.style['background-image'] == 'url("https://abs-0.twimg.com/emoji/v2/svg/1f1ea-1f1f8.svg")'){
            tip.style['background-image']= 'url("https://abs-0.twimg.com/emoji/v2/svg/1f3f3-fe0f-200d-1f308.svg")';
        }
    }
}

setInterval(example, 10000);

此外,您必须使用某种间隔来获得稍后加载的结果。或者,您可以使用检测DOM更改,并且只在DOM更改上启动您的函数。

正如您所提到的,“twitter动态加载内容”,因此我们无法获取所有图像的src,而只能获取当前加载的图像。@palaѕѕѕѕ但使用setInterval,我会获取新结果,对吗?关键是,即使我能拿到src,我也无法改变它,因为一些奇怪的原因正在发生,因为twitter使用
背景图像:url(…)
@palaѕѕѕlol在div上设置图像,你是对的。我怎样才能进入那个部门?我是说,每个部门都有相同的名字class@palaѕѕа好了,修好了,现在效果很好,设定间隔呢?(我更新了帖子)正如你提到的,“推特动态加载内容”,因此我们无法获取所有图像的src,而只能获取当前加载的图像。@palaѕѕѕѕ,但使用setInterval我会获取新结果,对吗?关键是,即使我能拿到src,我也无法改变它,因为一些奇怪的原因正在发生,因为twitter使用
背景图像:url(…)
@palaѕѕѕlol在div上设置图像,你是对的。我怎样才能进入那个部门?我是说,每个部门都有相同的名字class@palaѕѕа好了,修好了,现在效果很好,设定间隔呢?(我更新了帖子)