Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向父iframe添加代码的javascript_Javascript - Fatal编程技术网

向父iframe添加代码的javascript

向父iframe添加代码的javascript,javascript,Javascript,我已经为此挣扎了一段时间,我正试图从iframe向主窗口添加一个函数,但我能让它工作的唯一方法是在主窗口中提供一个eval函数并传递一个字符串,例如: --main window-- function evalcmd(c){ eval(c); } --iframe-- parent.evalcmd('alert(location.href)'); 理想情况下,我想要这种形式的东西 --iframe-- parent.myalert=new Funct

我已经为此挣扎了一段时间,我正试图从iframe向主窗口添加一个函数,但我能让它工作的唯一方法是在主窗口中提供一个eval函数并传递一个字符串,例如:

--main window--
    function evalcmd(c){
      eval(c);
    }
--iframe--
    parent.evalcmd('alert(location.href)');
理想情况下,我想要这种形式的东西

--iframe--
    parent.myalert=new Function('alert(location.href);');
但是,这似乎是从iframe的上下文调用的,即警报引用iframes文件名

抱歉,新编辑

该警报试图显示新函数在其中运行的上下文(如果有)

--main window--
<div id="txt1" style="left:50px;">somettxt</div>

--iframe--
parent.movetxt=new Function("document.getElemenById('txt1').style.left='35px';");
好的, 有没有一种方法不使用eval就可以实现此功能?
我基本上有很多代码我想添加到父窗口,所以不想通过添加父窗口。要在所有引用上使用varname/functionname,您应该能够执行以下操作

parent.alert("your message");
parent.alert(parent.location.href + "\n" + window.location.href);
parent.alert("your message");
parent.alert(parent.location.href + "\n" + window.location.href);