Несколько перезагрузок iframe через 30 секунд - PullRequest
0 голосов
/ 13 марта 2019

У меня есть страница с несколькими фреймами, и мне нужен скрипт, который перезагружает фреймы через 30 секунд. До сих пор я нашел только сценарии, которые работают только для iframe, а другие не обновляются. Есть ли способ перезагрузить несколько одновременно?

Редактировать: время не требуется

$(function() {
    setInterval(refreshiframe, 5000);
});

function refreshiframe() {
    $('#testframe').attr('src', $('#testframe').attr('src'));
}

Ответы [ 2 ]

0 голосов
/ 13 марта 2019

Перезагрузить все iframes

let iFrames = document. getElementsByTagName('iframe');

for (let i = 0; i < iFrames.length; i++){
  iFrames[i].src = iFrames[i].src;
}

Перезагрузить несколько iframes по классу

let iFrames = document. getElementsByClassName('element-class');

for (let i = 0; i < iFrames.length; i++){
  iFrames[i].src = iFrames[i].src;
}

Обновить один iframe по id

let iFrame = document.getElementById('element-id');
iFrame.src = iFrame.src;
0 голосов
/ 13 марта 2019

Это на самом деле очень просто.

function refreshiFrames(selectors){
    //selectors is an array, it could be --  var selectors = ["#abc",".xyz"];  to get all the iframes that have Id "abc" or class "xyz"

    for(let i =0; i<selectors.length; i++){
        let iframes = document.querySelectorAll(selectors[i]);
        for (let j =0; j<iframes.length; j++){
             iframes[j].src = iframes[j].src;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...