0

すべてのブラウザーにメッセージを表示し、サポートされている場合は JavaScript を使用してメッセージを削除しようとしています。現在、非表示にする唯一の方法は、非表示ボタンをクリックすることです。私のif文では実行されません。

<html>
<head>

<script type="text/javascript">
var browser=navigator.appCodeName + navigator.appName;
function hideStuff(id) {
  document.getElementById(id).style.display = 'none';
 }

function supportedBrowser() {
if (browser == "MozillaNetscape")
  {
  document.write("Browser is Mozilla Netscape");
  }
else if (browser == "MozillaOpera")
  {
  document.write("Browser is Mozilla Opera");
  hideStuff('browserMessage');
  }
else
  {
alert("Please upgrade your browser.");
 }
}
//-->
</script>
</head>
<body>
<a href="#" onclick="hideStuff('browserMessage'); return false;">Hide</a>
<br><br>
<p id="browserMessage" style="display: inline;">Please use a supported browser.</p>
</body>
</html>

「bluevoodoo1」に合わせて変更

<html>
<head>

<script type="text/javascript">
var browser=navigator.appCodeName + navigator.appName;
function hideStuff(id) {
        document.getElementById(id).style.display = 'none';
    }
function supportedBrowser() {
if (browser == "MozillaNetscape")
  {
  document.write("Browser is Mozilla Netscape");
  }
else if (browser == "MozillaOpera")
  {
  document.write("Browser is Mozilla Opera");
  //hideStuff('browserMessage');
  }
else
  {
alert("Please upgrade your browser.");
    }
}
function init() {
         supportedBrowser();
       //etc
    }
    window.onload = supportedBrowser;
    //-->
</script>
</head>
<body>
<a href="#" onclick="hideStuff('browserMessage'); return false;">Hide</a>
<br><br>
<p id="browserMessage" style="display: inline;">Please use a supported browser.</p>
<p>This text shoudld not be hidden.</p>
</body>
</html>

私が間違っていることを誰かが知っていますか?

4

1 に答える 1

0

window.onload ハンドラーを使用する必要があるかもしれません... (jquery の "document.ready" がおそらく好まれますが、以下のネイティブ JavaScript を使用しています)

<script>
    function init() {
         supportedBrowser();
         //etc
    }
    window.onload = init; 
</script>
于 2011-01-14T02:21:08.110 に答える