JS BOM教程:打开与关闭窗口

0 下载量 123 浏览量 更新于2024-09-01 收藏 96KB PDF 举报
"JS中的BOM应用,包括浏览器对象模型(BOM)的基础知识,如窗口操作、document.write的使用以及在事件中打开新窗口并写入内容的方法。" 在JavaScript中,BOM(Browser Object Model)是用于操作浏览器对象的一个接口,它允许开发者与浏览器的特性进行交互,如窗口管理、导航、位置和尺寸等。BOM的核心对象是`window`,它是所有其他BOM对象的全局容器。 首先,我们来看看如何使用`window.open()`方法打开新的窗口。在提供的代码示例中,`onclick`事件被绑定到一个按钮上,当按钮被点击时,`window.open()`方法会被调用,它接受两个参数:要加载的URL(在这个例子中是'http://www.zhinengshe.com/')和窗口名称('_blank'表示新建窗口)。这样,点击按钮就会打开一个新的浏览器窗口并加载指定的URL。 与之相对应的`window.close()`方法,用于关闭当前窗口。然而,需要注意的是,由于浏览器的安全策略,JavaScript通常无法直接关闭用户未通过脚本打开的窗口。 在BOM中,`document.write()`是一个常用但有时也颇具争议的方法。它可以在文档加载时向HTML文档写入内容。如示例所示,当在按钮点击事件中使用`document.write('abc')`时,它会清除整个页面内容,并替换为'abc'。这是因为`document.write()`在文档已经加载后执行时,会清空文档流并重新开始写入。 为了在新窗口中写入动态内容,我们可以创建一个新的`window`对象,然后利用其`document.write()`方法。这段代码展示了如何获取文本框的值,并在新窗口中写入该值: ```javascript window.onload = function() { var oTxt = document.getElementById('txt1'); var oBtn = document.getElementById('btn1'); oBtn.onclick = function() { var oNewWin = window.open('about:blank', '_blank'); oNewWin.document.write(oTxt.value); }; }; ``` 在这个例子中,当用户点击按钮时,`oBtn.onclick`事件处理函数会被调用。它首先创建了一个新的窗口`oNewWin`,然后在新窗口的文档中写入文本框`oTxt`的值。这展示了如何结合BOM和DOM操作来实现更复杂的交互功能。 BOM还包含许多其他功能,比如窗口的导航(`window.location`)、滚动条管理(`window.scrollTo()`和`window.scrollBy()`)、窗口大小调整(`window.resizeTo()`和`window.resizeBy()`)等。掌握BOM的这些基本操作对于开发具有交互性的网页至关重要。在实际开发中,了解并熟练运用BOM能够帮助我们更好地控制用户的浏览体验,实现更多自定义的功能。