タブ付きブラウザ(私にとってはFF 3.5インチ)では、Ctrlキーを押しながらクリックするか中クリックで新しいタブのリンクを開くことがよくあります。リンクにJavascript関数が含まれている場合は、次のいずれかを実行します。
- 空白の新しいタブが開き
javascript:window.print()
、アドレスバーに「またはwhat-have-you」が表示されます。 - 関数は正常に実行され、空白の新しいタブが開きます。
つまり、これはすべてのJavascript関数で一貫して発生するわけではないようです。例えば:
- このページの[印刷]ボタンをCtrlキーを押しながらクリックすると、印刷ダイアログが開き、空の新しいタブが生成されます。
- このページのホワイトペーパーリンクは、Ctrlキーを押しながらクリックすると、空の新しいタブのみを生成します。
問題のリンクには、それぞれ次のコードが含まれています。
javascript:window.print();
javascript:_hbRedirect('PDF Downloads','White Paper','URL.pdf','&c1=TITLE|US-en')
このSOの質問はやや似ています。最も評価の高い回答はAJAXベースのソリューションの詳細ですが、一部のJavascript関数が他の関数とタブで異なる動作をする理由の説明を見つけることができませんでした。