JavaScript类似的函数不起作用

JavaScript similar functions not working

本文关键字:函数 不起作用 JavaScript      更新时间:2023-09-26

我需要制作3个按钮,每个按钮打开类似的窗口。

在我的index.html中如下所示

<li><button type="button" onclick="openBeep()">Beep</button></li>
<li><button type="button" onclick="openFlash()">Flash</button></li>
<li><button type="button" onclick="window.open()">Indexing</button></li>

我openBeep ()

function openBeep() {
  var w = window.open(''),
    button = w.document.createElement('button');
  button.innerHTML = 'Start Test';
  button.addEventListener('click', function () {
    w.alert('!');
  });
  var container = w.document.createElement('div');
  container.id = 'buttonParent';

  w.document.body.appendChild(container);
  container.appendChild(button);
}

这个脚本工作得很好,如果我把所有的onclick替换为openBeep,它们都会打开新窗口。但是openFlash什么也没做,尽管本质上是一样的。

function openFlash() {
  var x = window.open(''),
    button = x.document.createElement('button');
  button.innerHTML = 'Start Test';
  button.addEventListener('click', function () {
    x.alert('!');
  });
  var container = x.document.createElement('div');
  container.id = 'buttonParent';

  x.document.body.appendChild(container);
  container.appendChild(button);
}

给刚入门的Javascript程序员的快速提示:始终确保打开检查器/开发人员工具。在大多数浏览器中,你用F12打开它。

然后在控制台中监视所有错误。就像你的问题一样(你自己解决了;-),你会看到一个错误,说这个函数找不到。