サンプルコード:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<iframe name="iframe_a" onload="alert('Thanks for the visit!');"></iframe>
<a href="http://www.example.com/" target="iframe_a">Go!</a>
</body>
</html>
リンクをクリックした後、iframe の読み込みが完了したときにアラート メッセージが表示されるようにしたいと思います。しかし今では、最初のページ読み込みにも表示されます。IE8+で動作するようにするにはどうすればよいですか?
簡単な解決策を思いつきました:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<iframe id="iframe_a" name="iframe_a" onload="if(this.className=='active'){alert('Thanks for the visit!');};"></iframe>
<a href="http://www.example.com/" target="iframe_a" onclick="document.getElementById('iframe_a').className='active';">Go!</a>
</body>
</html>