星期三, 12月 20, 2006

[Note]IE7的"Open in new Tab" 消失了

安裝 IE7 正式版以後,發現一個問題,滑鼠右鍵點選連結時,應該要出現 "Open in new Tab" 的,可是卻消失了。
我納悶了很久,不知道該怎麼解決。

某天因緣際會之下,看到了這篇文章:IE7 Tabbed Browsing Q & A ,作者說如果有任何關於 Tab browsing 疑問的話,請儘管留言,他會努力解決,於是我留下問題。
過了許久,等我想起這件事情的時候,再次回來看這篇文章,發現作者已經很詳細的回答了我的問題。

@elleryq, most likely you have an add-on that decided to override IDocHostUIHandler in order to provide a custom context menu. The fix is to look at your add-ons and upgrade or un-install them. Some, such as the Google toolbar, have fixed this in the newest versions.

To provide more detail, the problem is that they're loading the IE6 version of the context menu out of shdoclc.dll, which is no longer part of IE, but is still part of Windows Explorer. There was some bad documentation on our part (well, legacy) which suggested loading otherwise undocumented IE resources out of shdoclc.dll, which a handful of add-ons followed.

IDocHostUIHandler was primarily intended to be used by 3rd party browsers such as Maxthon, and not IE extensions. The recommended advice for 3rd party developers is to use standard context menu extensions whenever possible (see the "Context Menus and Extensions" section in http://msdn2.microsoft.com/en-us/library/aa770042.aspx) and if you really *have* to override IDocHostUIHandler, load your own resources for the context menus.

tonyschr


所以我照著他的建議,更新 Google toolbar 到最新版,問題就解決啦~

沒有留言: