Bookmarklet: добавить скрытый iframe на страницу и загрузить URL

StackOverflow https://stackoverflow.com/questions/635622

Вопрос

У меня есть букмарклет для сброса настроек маршрутизатора. Мне просто нужно зайти и дождаться окончания загрузки страницы, после чего мой маршрутизатор начнет перезагружаться.

javascript:(function(){w=window.open("http://192.168.0.1/goform/formReboot","","width=1,height=1");self.focus();window.onload=w.close();})();

Но он открывается во всплывающем окне.

Моя новая идея - динамически добавлять скрытый iframe на страницу, на которой я работаю, с помощью javascript bookmaklet, а затем открывать URL в скрытом iframe. Это вообще возможно?

Я открыт для лучшего предложения о том, как это можно сделать.

Это было полезно?

Решение

Еще более простой способ - создать новый элемент IMG:

(function(){
    (new Image()).src = "http://192.168.0.1/goform/formReboot";
})();

Как букмарклет:

javascript:void((function(){(new Image()).src = "http://192.168.0.1/goform/formReboot";})());
<Ч>

Или, если это не сработает, вот создатель 'iframe', который вы запросили:

(function(){
    var i = document.createElement('iframe');
    i.style.display = 'none';
    i.onload = function() { i.parentNode.removeChild(i); };
    i.src = 'http://192.168.0.1/goform/formReboot';
    document.body.appendChild(i);
})();

Другие советы

Это можно сделать? Конечно!

<Ол>
  • Создайте элемент iframe с какие бы параметры не понадобились
  • Добавьте его как последний ребенок к телу элемент
  • Готово!
  • Вот пример (все будет идти в одну строку):

    javascript:var%20ifra=document.createElement('iframe');
    ifra.src="http://www.chron.com";
    ifra.setAttribute("height","230");
    ifra.setAttribute("width","360");
    void(document.body.appendChild(ifra));
    
    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top