src里js和iframe的巧妙应用。。。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>src里js和iframe的巧妙应用,嘿嘿,不过还是不推荐使用iframe</title>
<script type="text/ecmascript">
var getButton = {

    static : 1
   
    , valueOf : function () {
        return "<button οnclick=/"window.frameElement.parentNode.removeChild(window.frameElement)/">删除第 "
            + (this.static ++) + " 个iframe<//button>";
    }
   
    , toString : function () {
        return this.valueOf();
    }
   
};

var a = function () {
    var i, d = document.createElement("iframe");
    document.body.appendChild(d);
    i = d.contentWindow; //这个是iframe的window对象
    i.onload = function () {
        this.document.body.innerHTML = getButton;
    };
    i = d = null;
};

var b = function () {
    var a = ["/"<s" + "cript", "<//s" + "cript>/""], d = document.createElement("iframe");
    d.src = [
    //这很明显,JS为的href或者src等属性里的javascript:的执行环境,都是新的地址为准(就是window对象)
        "javascript:"
        , a[0]
        , ">window.o" + "nload = function () { document.body.innerHTML = top.getButton; };"
        , a[1]
    ].join("");
    document.body.appendChild(d);
    d = null;
};

window.onload = function () {
    //如果想给ifm值的话
    try {
        a();
    } catch (exp) {
        alert("a 函数错误:" + exp.message);
    }
    try {
        b();
    } catch (exp) {
        alert("b 函数错误:" + exp.message);
    }
};
</script>
</head>
<body>
</body>
</html> 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值