2009-06-23 57 views
0

我正在尋找某種技巧來確定用戶是否擁有javascript ...我想我可以通過在頂部發送ajax請求以某種方式做到這一點一個頁面,並在該Ajax請求,設置會話變量,然後以某種方式重新加載頁面,並看到它被設置...尋找一個Ajax或PHP技巧來檢測他們是否有Javascript

PHP/AJAX有這樣的技巧嗎?

+0

你在這裏的最終目標是什麼?你只是想知道在客戶端(對於CSS或其他)或在服務器端?無論哪種方式,這是一個騙局... – 2009-06-23 23:14:58

+0

許多答案已經試圖回答這個問題,但你可能會問錯誤的問題。建立在工作的東西:http://icant.co.uk/articles/pragmatic-progressive-enhancement/ – Quentin 2009-11-30 15:48:07

+0

可能的重複[如何禁用javaScript的重定向?](http://stackoverflow.com/questions/2489376/how-to-redirect-if-javascript-is-disabled) – 2012-09-28 23:38:07

回答

-2

你可以使用一個非常簡單的提示:

<script>document.location="/index2.php";</script> 
<p>You need javascript for an improved navigation!</p> 

在當前頁面(我假設是的index.php)僅用於訪問者重定向到實際的索引頁:index2.php

或使用get_browser它爲javascript提供了一個字段。我用firefox測試了它(禁用js而不是),它對我來說工作得很好。

+0

你應該設置`window.location.href`而不是`document.location` – Christoph 2009-06-23 23:18:20

-4
$results = get_browser(); 
if ($results["javascript"] == 1) { 
echo "You have javascript"; 
} 

source

2

您可以隨時使用腳本標記:

<noscript> 
<input type="hidden" name="has_javascript" value="false"> 
</noscript> 

,並檢測到服務器上。

7

你可以做的是添加這樣的代碼(沒有AJAX需要):

<meta http-equiv="refresh" content="2;URL=/?nojs" /> 
<script type="text/javascript"> 
window.location.href="/?js"; 
</script> 

然而,你不應該這樣做。相反,每次都提供基本網站,並使用script元素對其進行裝飾,以加載修改和添加動態內容的所有JavaScript。

0

aif是錯誤的。 即使JS被禁用,如果您的瀏覽器支持JS,它將被列爲javascript = 1。