Bookmarklet:将隐藏的iframe附加到页面并加载网址

时间:2009-03-11 17:50:03

标签: javascript html iframe bookmarklet router

我有一个用于重置路由器的书签。我只需要访问并让页面完成加载,然后我的路由器开始重置。

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

但它会在弹出窗口中打开。

我的新想法是使用javascript bookmaklet动态地将隐藏的iframe附加到我正在使用的页面,然后在隐藏的iframe中打开网址。这甚至可能吗?

我愿意更好地了解如何做到这一点。

2 个答案:

答案 0 :(得分:28)

更简单的方法是创建一个新的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);
})();

答案 1 :(得分:2)

可以吗?当然!

  1. 使用创建iframe元素 无论需要什么参数
  2. 添加它 作为身体的最后一个孩子 元素
  3. 完成!
  4. 这是一个例子(一切都在一行):

    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));