`
T240178168
  • 浏览: 367934 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

IFrame AND window对象

    博客分类:
  • JS
阅读更多
var detialIframe=document.all("detialIframe");      此处的IFrame是从document取得的,即作作为document的子对象出现,虽然是文档(document)对象,但由于它是独立的页面,因 而拥有自己的事件,拥有自己的窗口对象(contentWindow); Window.detialIframe 或 Window.frames(detialIframe)将直接取得IFrame的Window对象 IFRAME       IFRAME 元素也就是文档中的文档 window 对象       浏览器会在其打开一个 HTML 文档时创建一个对应的 window 对象。但是,如果一个文档定义了一个或多个框架(即,包含一个或多个 frame 或 iframe 标签),浏览器就会为原始文档创建一个 window 对象,再为每个框架创建额外的 window 对象。这些额外的对象是原始窗口的 子窗口,可能被原始窗口中发生的事件所影响。例如,关闭原始窗口将导致关闭全部子窗口。如果想要创建新窗口(以及对应的 window 对象),可以使用像 open, showModalDialog 和 showModelessDialog 这样的方法。 contentWindow       contentWindow属性是指指定的frame或者iframe所在的window对象     在IE中iframe或者frame的contentWindow属性可以省略,但在Firefox中如果要对iframe对象进行编辑则必须指定contentWindow属性。   function EnableEdit() {      var editor;      editor = document.getElementById("HtmlEdit").contentWindow;   // 针对IE浏览器, make it editable     editor.document.designMode = 'On';      editor.document.contentEditable = true;    // For compatible with FireFox, it should open and write something to make it work      editor.document.open();      editor.document.writeln('<html><head>');      editor.document.writeln('<style>body {background:  white;font-size:9pt;margin: 2px; padding: 0px;}</style>');     editor.document.writeln('</head><body></body></html>');     editor.document.close(); }   <iframe  ID="HtmlEdit" MARGINHEIGHT="1" MARGINWIDTH="1" width="100%" height="312"> </iframe>   <html> <body> <script>      var ifr = document.createElement("iframe");     document.body.appendChild(ifr);      var ifrdoc = ifr.contentWindow.document;      var s = fixingHTB.innerHTML;  //进入可编辑模式前存好     ifrdoc.designMode = "on";    //文档进入可编辑模式     ifrdoc.open();               //打开流     ifrdoc.write(s);       ifrdoc.close();              //关闭流      ifrdoc.designMode ="off";    //文档进入非可编辑模式 </script> </body> </html>  document.designMode的功能与使用方法介绍 将文档设置为设计模式          要将整个文档设置为设计模式,可以对文档对象本身设置 designMode 属性。当文档处于设计模式时,将不运行脚本。这样,似乎在文档内设置一个按钮来打开或关闭设计模式是个好注意,但这样做没有作用。当用户打开它后,它将保 持在设计模式状态。当他们下次单击此按钮时,它将被选定而不是被单击,他们再次单击它,将能够编辑它的值。这就是为什么如果要使用设计模式最好对框架或 IFrame 中的文档设置 designMode 属性的原因。下例展示如何为 IFrame 中的文档打开设计模式:     <script for="btnDesign" event="onclick">    targetDoc = document.frames(0).document;    if (targetDoc.designMode == "On")              targetDoc.designMode = "Off";    else               targetDoc.designMode = "On";    </script>     <button id=btnDesign>DesignMode</button>     <iframe src="blank.htm" style="border: black thin; width:100%; height:200px"></iframe>           designMode 属性的值始终以首字母大写格式存储,即时它最初是以全部小写设置的。请在测试它的值时一定记住这点。designMode 属性的默认值是“Inherit”。 
分享到:
评论

相关推荐

    Iframe模拟Jquery.Ajax

    例如,可以使用`contentWindow`属性访问Iframe中的window对象,然后调用其`document`对象进行操作。 4. **模拟Ajax**:创建一个隐藏的Iframe,通过它的`src`属性设置为需要请求的URL,这样可以在后台加载数据,而...

    关于iframe中生成父窗口元素及增加event事件的问题(IE已实现,Firefox暂未实现)

    当我们想要在iframe中操作父窗口的元素时,可以使用JavaScript的`window.parent`对象。例如,如果我们知道父窗口有一个ID为"parentDiv"的元素,我们可以这样获取和修改它的内容: ```javascript var parentDiv = ...

    iframe相关知识

    1. **父页面与iframe通信**:通过JavaScript的`window.frames`对象或者`window.parent`对象,可以访问和修改iframe中的内容。例如,`window.frames['iframeName'].document.getElementById('id').value`。 2. **...

    ajax iframe上传.

    6. **获取iframe内容**:由于同源策略限制,我们不能直接访问iframe的`contentDocument`或`contentWindow`,但可以通过`window.frames`属性间接获取。 ```javascript function getIFrameContent(iframe) { var doc...

    js操作iframe的一些方法介绍

    1. 获得iframe的window对象存在跨域访问限制。 chrome:iframeElement. contentWindowfirefox: iframeElement.contentWindowie6:iframeElement.contentWindow 文章Iframes, onload, and document.domain中说“he ...

    file模式访问网页时iframe高度自适应解决方案

    例如,给出的代码片段中定义了一个名为`SetWinHeight`的函数,它接受一个`iframe`对象作为参数。函数内部检查了不同浏览器的兼容性,尝试获取`iframe`内容的`body`或`scrollHeight`属性来计算实际高度,然后设置`...

    iframe式ajax调用示例代码

    - iframe加载完成后,可以通过`window.parent`对象访问主窗口。 - 主窗口也可以通过`window.frames[0]`或者`document.getElementsByName('iframeName')[0]`等方式访问子窗口。 **2. 数据处理** - 在服务器端(如b....

    ajax(iframe)无刷新提交表单、上传文件

    此外,使用iframe进行Ajax请求时,需要确保服务器的响应能够正确地通过iframe的`window.name`或`window.postMessage`进行通信。 #### 8. Ajax与用户体验 Ajax技术极大地改善了网页的用户体验,尤其是在需要大量数据...

    AJAX的阻塞及跨域名解析

    在主页面中,我们可以使用JavaScript来访问iframe里的页面对象,例如window和DOM结构,包括调用JavaScript(通过window对象)。我们可以通过将内外页面的document.domain设为相同来实现跨子域名的访问。 AJAX阻塞和...

    使用iframe在Jquery语法中的父页面和子页面之间进行交互

    在网页开发中,有时我们需要在不同的页面之间进行数据或事件的传递,特别是在父页面与嵌入...阅读"Using-iframe-to-interact-between-parent-and-child.pdf"文件将提供更详细的示例和技巧,帮助你更好地掌握这一技术。

    107个常用javascript语句

    常用iframe&lt;iframe id="IFramewindow" width="0" height="0" name='IFramewindow'&gt;&lt;/iframe&gt; -2.常用 //错误提示 function AlertErrorMeg(meg){ alert(meg); } //提示转向 function AlertRedirect(meg,url){ ...

    Javascript笔记

    `window`对象代表整个浏览器窗口,是所有顶级对象的父对象。它可以用来访问浏览器的各种功能,如打开新窗口、调整大小等。 ### JavaScript Document文档对象 `document`对象代表当前加载的HTML文档,可以用来修改...

    IE7 Ajax跨域问题

    4. **IFrame通信**:利用IFrame和Window.postMessage API(尽管这个API在IE8以上版本才开始支持),可以在不同的源之间传递数据。不过在IE7中,这通常需要复杂的技巧和工作流。 5. **XDomainRequest对象**:这是IE7...

    part3 JS Additional articles.pdf

    **Windows** 指的是浏览器中的窗口对象,它是 `window` 对象的原型。在 JavaScript 中,可以通过创建新的窗口来实现弹窗、新标签页或新窗口的打开。例如,使用 `window.open(url, name, specs, replace)` 方法可以...

    javascript的经典面试题汇总

    - **选项A**: `window.opener属性本身就是指向window对象` - **解析**:`window.opener`属性用于引用打开当前窗口的窗口对象。 - **选项B**: `window.reload()方法可以用来刷新当前页面` - **解析**:实际上,`...

    Ajax学习资料

    - `window`:全局对象,代表浏览器窗口。 - `location`:提供当前页面URL的相关信息。 - `frames`:引用HTML帧对象。 - `history`:管理浏览器的历史记录。 - `navigator`:获取浏览器信息,如名称、版本、操作系统...

    jQuery常见问题及用法

    当需要在iframe中操作父窗口的对象时,可以利用`window.parent`属性来访问父窗口的DOM。例如,要选中父窗口的所有单选按钮,可以使用`$(window.parent.document).find("input[type='radio']").attr("checked", ...

    阿里前端面试(含答案)1

    BOM包括window、navigator、document等对象,提供了与浏览器交互的功能,例如window.location、window.history等。 9. **HTML5 Drag and Drop API** HTML5的拖放API允许用户通过拖拽元素实现数据交换,增强了...

Global site tag (gtag.js) - Google Analytics