document.getElementById()选择其他浏览器元素

时间:2016-12-21 15:09:15

标签: javascript browser browser-sync

我正面临一个非常奇怪的跨浏览器行为,使用javascript调用代码,在不同的浏览器中打开相同的页面( Firefox Chrome Safari 在我的情况下)。

我尝试编写最简单的代码,以便在下面重现它。挂钩按钮的onclick事件时,我会将某些内容记录到控制台并向页面添加<p>元素:

&#13;
&#13;
document.getElementById('click').onclick = function() {
    console.log('click');
    var content = document.getElementById('content');
    var p = document.createElement('p');
    var t = document.createTextNode('click happened');
    p.appendChild(t);
    content.appendChild(p);
};
&#13;
<button id="click">click</button>
<div id='content'></button>
 
&#13;
&#13;
&#13;

在同一页面上打开两个或三个浏览器时,会在所有窗口中触发该事件。

我必须准确地使用https://browsersync.io提供代码:

browser-sync start --server --files "*.html, *.css, *.js"

出了什么问题?这是正常行为吗?

我的配置

  • MacOS 10.11.6(11602.2.14.0.7)
  • Safari 10.0.1
  • Firefox 50.1.0
  • Chrome 55.0.2883.95(64位)
  • browser-sync 2.18.5

1 个答案:

答案 0 :(得分:0)

这不是错误,而是browsersync.io !!!

的一项功能