JavaScript 如何从一个超链接中锁定一个特定的框架

JavaScript 如何从一个超链接中锁定一个特定的框架

HTML框架提供了一种方便的方法,可以将一个浏览器窗口分成多个部分。

每个部分都可以加载一个单独的HTML文档。我们可以使用JavaScript,通过窗口对象的frames属性,将内容加载到一个特定的框架中。frames属性是一个类似数组的对象,包含当前页面上的所有框架(包括iframe)。

我们有很多方法可以使用window.frames[]属性将文档的内容加载到框架中。让我们一个一个地看 –

1.使用索引

要瞄准一个特定的框架,你可以使用框架的索引或名称。例如,要瞄准页面上的第一个框架,你可以使用下面的代码–

window.frames[0].document.location.href = "http://www.example.com"

2.使用框架名称

要用一个框架的名称作为目标,可以使用以下方法。假设框架的名称是 “frame_name”-

window.frames["frame_name"].document.location.href = "http://www.example.com";

3.使用getElementById和getElementByName

你也可以使用getElementById()或getElementsByName()方法来定位框架,然后使用contentWindow方法来访问框架窗口,像这样

document.getElementById("frame_id").contentWindow.location.href = "http://www.example.com";
document.getElementsByName("frame_name")[0].contentWindow.location.href = "http://www.example.com";

例子

下面是完整的工作代码片段,包括所有这些方法—-。

<!DOCTYPE html>
<html>
<head>
   <title>Target a frame</title>
</head>
<body>
   <button onclick="indexMethod()">Using Index</button>
   <button onclick="nameMethod()">Using Frame Name</button>
   <button onclick="queryMethod()">Using Query Methods</button>
   <iframe src=""
      height="150px"
      width="100%"
      name="frame_name"
      id="frame_id" srcdoc="<html>
         <body style='background-color:#ccc;'>
         <h1>Testing iframe</h1>
         </body>
         </html>">
   </iframe>
   </body>
   <script>
      const indexMethod = () => {
         const child = document.createElement('p');
         child.innerText = 'added inside frame';
         window.frames[0].document.body.appendChild(child);
     };
      const nameMethod = () => {
         const child = document.createElement('p');
         child.innerText = 'added inside frame';
         window.frames["frame_name"].document.body.appendChild(child);
     };
     const queryMethod = () => {
         const child = document.createElement('p');
         child.innerText = 'added inside frame';
         document.getElementById("frame_id").contentWindow.document.body.appendChild(child);
     };
   </script>
</html>

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

JavaScript 教程