吵吵   2011-09-22  阅读:2,622

前天在群里面一哥们问道window.open在js里面怎么用不了,我本来以为仅仅是因为它自己构造的url的问题,url没有构造正确,不能让它打开一个不存在的网页吧。之后他说用alert看过了,是正确的,再次怀疑没加http,结果他说也加了,这就比较蛋疼了。

为此我特意写了一下代码,以打开百度为例,告诉他这个函数是可用的:
var url=’http://www.baidu.com’;
window.open(url,’newwindow’);
事实证明上面最简单的代码是可以执行的。但是他还是搞不定,就只好看源码了:




一看到它的代码我就不淡定了,一是他直接用了元素的名称而不是通过document.getElementById来获取对象,这种写法能在ie中运行,但是在其它的浏览器中就没法通过了。

二是它很蛋疼的把window写成了windows,估计平常收到的微软的影响很大,他找了半天的错误,却没发现其实错误就在眼前,愣是不知道把window多加了一个s。

解决了这个错误后,发现还是不行,连alert都没法执行了,这个问题我们写js的时候经常遇到,是某个代码写错了,或者是执行错误,代码运行就停在那里了,由于js不会像php那样告诉你运行到哪里出错了,所以你也没法知道停在哪里了,只能一步步走了。

总而言之,如果你的网站都加载了jquery的话还是用这个库吧,至少对浏览器的兼容性,他做的比你自己写要好。

吵吵微信朋友圈,请付款实名加入:

吵吵 吵吵

8条回应:“js中window.open用不了?”

  1. 诚逸SEO说道:

    不懂技术,但欣赏技术,现在这样无私奉献的人不多了啊!

  2. 米多说道:

    技术控,曾经米多也希望能成为技术达人

  3. 第八博客说道:

    技术高手啊

    我用来试试

  4. 一生有你说道:

    看来博主很用心啊,学习了

  5. 非常向往啊

  6. 流氓兔说道:

    谷歌现在还有视频广告!

  7. 视频会议说道:

    细心很重要。

发表评论

电子邮件地址不会被公开。 必填项已用*标注