- From: Charlie <dh20156@gmail.com>
- Date: Tue, 30 Oct 2012 12:46:17 +0800
- To: Dean Lee <xslidian@gmail.com>
- Cc: "Kang-Hao (Kenny) Lu" <kanghaol@oupeng.com>, W3C HTML5 中文興趣小組 <public-html-ig-zh@w3.org>
这个部分有后话否? Charlie 发自我的 iPhone 在 2012-9-13,下午9:50,Dean Lee <xslidian@gmail.com> 写道: > 再加一行: > <a href="">another test</a> > 在上述三款浏览器下均弹出新标签页。 > > 从效果来看 base 标签应该影响了整个网页,与 URI 是否以 javascript: 开头无关。 > > > 2012/9/13 Kang-Hao (Kenny) Lu <kanghaol@oupeng.com>: >> dh 在群裡講到了一個不兼容,就是在 >> >> <base target="_blank" /> >> <a href="javascript:void(0);">test</a> >> >> 的情況,IE、FF 不彈窗,Chrome 不彈窗。所以,根據規範,到底是: >> >> A. IE、FF 正確 >> B. Chrome 正確 >> C. 規範沒講 >> >> 我一時沒時間去看這個部份,請人來規範解讀一下。 > > HTML5 草案(20120912)的 4.2.3 章节(<base> 元素)也提到 target 属性的内容 > “指定了‘文档’中超链接与表单产生跳转时所用的默认浏览上下文”(粗译仅供参考): > http://dev.w3.org/html5/spec/single-page.html#attr-base-target > (... which specifies which browsing context is to be used as the default > when hyperlinks and forms in the Document cause navigation.) > > 既然用了 <a>,各浏览器的分歧就是 void(0); 到底有没有产生页面跳转了。 > > 从我常见的实作来看,void() 通常用来避免页面跳转影响 onclick 事件的触发 > (个人很反感这种 href 属性),连 # 跳转也不会产生: > <p style="height:120%"> </p><a href="javascript:void();">test</a> > 上行代码在三款浏览器中均不会跳转至页面顶部。 > > 因此个人认为页面跳转不会产生,Chrome 更符合最新规范——选 B 项。 > > Best wishes, > Dean (@xslidian) > >> >> Franky 有一篇提到這個問題的長文[1],可以參考一下(可惜沒講到規範的樣子 >> :p)。 >> >> >> >> [1] http://www.cnblogs.com/_franky/archive/2012/07/05/2577141.html >> >> 以上 >> >> Kenny >> -- >> Web Specialist, Oupeng Browser, Beijing >> Try Oupeng: http://www.oupeng.com/ >>
Received on Tuesday, 30 October 2012 04:45:26 UTC