簡體   English   中英

如何檢測用戶是否禁用了javascript?

[英]How to detect if a user had javascript disabled?

我正在和一位朋友談論他們的瀏覽器中沒有啟用javascript的用戶,以及如何向他們展示您網站的“無javascript”版本。

它有可能,怎么做?

思考?

不要嘗試構建單獨的JS和非JS版本的站點。 構建一個非JS版本,然后使用JS增強它 這使得重用代碼變得更容易,允許您對整個堆棧使用對象/特征檢測 ,並且如果開發人員更新站點的一個分支而不是另一個分支,則不太可能沒有JavaScript的用戶被遺忘。

如果您的意思是javascript,請查找<noscript> HTML標記。

如果您正在談論JavaScript並希望為沒有JavaScript的人提供替代版本的網站,只需在沒有網站的情況下將其放在頁面頂部:

<script type="text/javascript">
     location.replace('http:javascript-version-of-your-site');
</script>

像這樣:

<html>
<head>
<noscript>
<meta http-equiv="refresh" content="0;url=http://foo/noscript.htm" />
</noscript>
</head>
<body>
...

如果瀏覽器上沒有啟用腳本,則僅執行元刷新(聲明性重定向)。 當然,只有具有javascript引擎的瀏覽器才能理解noscript標記。 如果你試圖捕獲根本沒有javascript的瀏覽器(我不知道很多)那么這將無法工作。

我使用JavaScript和CSS的這種組合

<html>
<style type="text/css">
    .js-on
    {
        display: none;
    }
    .js-off
    {
        background: red;
        color: White;
    }
 </style>
 <div id='jsdetect' class='js-off'><b>Javascript is OFF</b></div>
 <script type="text/javascript">
    document.getElementById('jsdetect').className = 'js-on';
 </script>

</html>

如果您的唯一目的是告訴用戶Javascript不可用以及該網站無法正常工作,那將非常有用。

您可以使用該代碼記錄/跟蹤/提醒您使用該標記禁用JavaScript的用戶。

<noscript>
   // Do Something
</noscript>

對您而言明顯的另一個選擇是使用JavaScript來刪除cookie,然后測試該cookie並適當地傳遞內容。 javascript ver vs non redirect或span

只是以為我會把它丟在那里..

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM