论坛首页 Web前端技术论坛

parent的一些限制

浏览 2336 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-12-12  
在javascript 用浏览器中的这个对象时,不能将子窗口中的一个浏览器中的对象传给parent 中的javascript函数,传进去他也起不了作用。如将一个<iframe>中去create一个table 传到parent(parent.add(table))中后将不能被利用。父窗口中有add方法。

function add(table){

         var div = document.getElementById("_divTable");
         div.appendChild(table);
}

  这是在子窗口中调用  parent.add(table)讲起不到任何作用。


   令我奇怪的是他不会报错只是没有效果,程序运行到
div.appendChild(table);
将会停止。
   发表时间:2007-12-12  
lz好强大呀,js是区分host的甚至在一个frame当中创建的[]的instanceof另一个frame的Array也是false,lz甚至想把element跨frame这是非常不现实的,比较现实的是传递outerHTML,再create再append.
0 请登录后投票
   发表时间:2007-12-13  
afcn0 写道
lz好强大呀,js是区分host的甚至在一个frame当中创建的[]的instanceof另一个frame的Array也是false,lz甚至想把element跨frame这是非常不现实的,比较现实的是传递outerHTML,再create再append.


你的意思好像是把子窗口中的对象传到富窗口中将会是false 对吗? 但我也做过其他的实验。就是在子窗口中再创建一个iframe (取个名字叫swin) 然后将其传入parent 的一个函数中对其修改属性是没问题的。如果能这样:子窗口中的对象传到富窗口中将会是false 就有问题了吧? 它只是在append 的时候会有问题,具体什么原因我也不清楚。还望指教。这个实验很容易做,你也可以试一试。

      我现在也在用类似于你说的方法,我是将数据传到富窗口中的再create再append。
0 请登录后投票
   发表时间:2007-12-13  
你不理解我的话,不是传递近来是false,而是不同host对象不能append当然修改属性,调用函数不属于append范畴,js不同host的object push也可以但是对于html element严格遵守append只能在一个host当中
0 请登录后投票
   发表时间:2007-12-13  
哦,我明白了。谢谢!!!
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics