次のように、iframe にリンクするメニューが開きます。
<a target='content' ...>
<iframe name='content' ...>
これはほとんどのページで正しく機能しましたが、特定のページを開いて何らかの作業を行った後、すべてのメニューが新しいウィンドウ (タブ) でコンテンツを開き始めました。リンク ターゲットが無視されていました。
なんで?
開いているページの 1 つにある次のようなコードに問題を突き止めました。
function x() {
...
name = "y"
...
}
varキーワードを入力し忘れていたため、javascript は "name" という変数をグローバル スコープに巻き上げていました。
これにより iframe の名前が上書きされたため、リンクはターゲットを見つけることができなくなり、新しいウィンドウで開かれました。
function x() {
...
var name = "y"
...
}