为什么这段代码没有显示id为blink的div?
我认为我已经完成了所有事情,当我点击按钮时它应该显示div。
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1/jquery.min.js"></script>
<div style="display:none; id="blink"">
<p>we do not supppport your browser</p>
</div>
<script>
var isChrome = (navigator.userAgent.indexOf("Chrome"));
if (isChrome)
{
$('#blink').show();
};
</script>
答案 0 :(得分:7)
除了拼写错误之外,代码不会像您认为的那样工作,因为String.indexOf(substring)
成功时返回包含字符串中子字符串开头的位置(可能是{{ 1}}),并且在失败时返回0
。
尝试:
-1
...但是,请注意UA嗅探。如果你只是提醒用户提供你的支持,那么公平,但不要引诱基于浏览器关闭和打开网站功能,至少一个功能检测库不会导致你的可维护性问题和激怒你的用户。
答案 1 :(得分:1)
语法错误导致它无法显示。谈话标记有问题。将您的div html更改为:
<div style="display:none;" id="blink">
<p>we do not supppport your browser</p>
</div>
答案 2 :(得分:1)
http://ajax.googleapis.com/ajax/libs/jquery/2.1/jquery.min.js无效。
但你可以改用这个(http://code.jquery.com/jquery-latest.min.js)
所以...
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Code</title>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>
<body>
<div style="display:none;" id="blink">
<p>we do not support your browser</p>
</div>
<script>
$(document).ready(function() {
// Edit : index checking as user52889 said :)
var isChrome = (navigator.userAgent.indexOf("Chrome") !== -1 );
if (isChrome) {
$('#blink').show();
};
});
</script>
</body>
</html>
答案 3 :(得分:1)
首先,有一些错字。第二,检查正在使用的浏览器的更优雅的方法是:!!window.chrome
看看我的例子:
http://jsfiddle.net/f4qdtqgs/5/
var isChrome = !!window.chrome;
if (isChrome) {
$("#blink").show();
};