通常,当加载页面并且浏览器禁用了Javascript时,我们使用<noscript>标记写出类似警告的内容并告诉客户端启用Javascript.然而,Facebook的,甚至后加载页面启用了JS,它禁止你得到通知的那一刻.我怎么能这样做?
更新:这个机制在Facebook上已经不再可用了,但是之前,我提出这个问题已经太迟了,但如果找到任何答案,我会非常感激.
我想在我的页面中有一个段,一直在检查Javascript是否被禁用,如果是,则显示内容<noscript>.
为实现这一目标,我创建了一个CheckJS.html页面.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="0">
</head>
<body>
<noscript>
JS is disabled!
</noscript>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这个页面将继续刷新,当JS被禁用时,JS被禁用!会出现.
在我的原始页面中添加此页面.我尝试了以下方法:
1- .load()
我在里面使用了JQuery.然而,似乎只加载的内容的CheckJS.html.意味着元素及其内部的内容不会被加载到内部..load('CheckJS.html')div.load()<body><head>div
2- iframe
经过一番搜索,我发现,加载的唯一可能途径FULL HTML页面,包括<head>是使用<iframe>.
<iframe src="CheckJS.html"></iframe>
Run Code Online (Sandbox Code Playgroud)
然而,<meta http-equiv="refresh" content="0">中CheckJS.html影响父页面,原来的页面本身开始让人耳目一新.
如果我们能够在<iframe>不强制原始页面刷新的情况下使用它,那么这可能是一个解决方案,但即使找到了这个解决方案,我觉得它更像是一个技巧而不是一个真正的解决方案.
UPDATE
安东尼的回答证明我iframe刷新原始页面是错误的,浏览器显示它的刷新,但实际上它不是,如果就是这样,那么可以避免使用Javascript …
它input type="color"有一个黑色的默认颜色:#000000.
即使我给它一个空值......
<input type="color" value="" />
...默认颜色始终为黑色.
我希望用户可以选择颜色,但如果他没有,则意味着没有选择颜色,甚至不是白色#FFFFFF.
有没有办法强制input type="color"不要默认黑色?
我可以使用某种"监听器"来检查用户是否第一次更改了颜色,如果没有,则忽略该值,但我想避免使用Javascript.
的setInterval()
重复调用函数或执行代码片段,每次调用该函数之间都有固定的时间延迟.
而()
只要测试条件的计算结果为true,就会创建一个执行指定语句的循环.在执行语句之前评估条件.
如果我while(true)用来执行一个特定的语句,我的浏览器会崩溃(Firefox),滞后(Opera),或者语句不会被执行(Chrome),但如果我使用0秒setInterval()的固定时间,一切都很完美,即使它只有0秒,并且逻辑上不能超过0秒,但为什么会发生这种情况呢?while(true)
while()示例:
<!DOCTYPE html>
<html>
<body>
<div id="counter"></div>
<script>
var i = 0;
while (true)
{
document.getElementById("counter").innerHTML += i++;
}
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
setInterval()示例:
<!DOCTYPE html>
<html>
<body>
<div id="counter"></div>
<script>
var i = 0;
setInterval(function() { counter() }, 0);
function counter()
{
document.getElementById("counter").innerHTML += i++;
}
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我有以下简单的输入.
<input type="text" placeholder="What is your username?" />
Run Code Online (Sandbox Code Playgroud)
当我text-transform: capitalize;用来大写每个单词的第一个字母时,占位符也会被大写:What Is Your Username?
如何保持占位符完整?
我用过.setBackground而且.setForeground它们不起作用,颜色就像橙色,无法改变它.
当我的应用程序加载(使用netbeans)时,第一个JTextField会自动聚焦,在这个JTextField中,我写了"输入你的用户名",当用户点击这个字段时,它会消失,但是当加载应用程序时,这个领域是重点,意味着我看不到"输入你的用户名",如何在启动时不重点?
在我的网站中,已登录的用户可以更改其个人资料图片,此过程包括将上传的图像保存到网站根目录中的文件夹中.
当我测试它时,我收到一个错误,我应该使用权限授予对此特定文件夹的访问权限.
我无法控制控制面板,他说他确实向Images文件夹授予了对其他人的READ和WRITE权限.
再次测试之后,再次出现同样的错误,所以我编辑了web.config并包含:
<identity impersonate="true"/>
Run Code Online (Sandbox Code Playgroud)
而现在一切似乎都很完美.但是,我刚才在这做什么?有安全隐患吗?我是否允许每个人匿名访问我的网站?
所以我可以看到select元素的选项,但我需要点击它.如果我想使用某个功能怎么办?当发生某些事情时,应选择此选择元素,表示列表已打开,我可以看到选项.我不希望用户点击选择元素,我想要其他东西来打开它.
我试过的
$("select").select();
$("select").click();
$("select").focus();
Run Code Online (Sandbox Code Playgroud)
有一个select元素,通常如果你想打开它(下拉列表),你点击它.我想要的是打开它,如果我点击一个DIV或其他任何东西.我希望打开此下拉列表,而无需用户单击select元素.
我有一个parent包含绝对定位childdiv的div.
所述child格被定位的初始边界之外parent的div.它正常渲染没有任何问题.
我overflow-y: scroll;在parentdiv中添加了一个,现在child尽管添加了元素,但仍然隐藏了元素overflow-x: visible;.
CSS
#parent{
position: relative;
overflow-y: scroll;
overflow-x: visible;
}
#child{
position: absolute;
left: -50px;
}
Run Code Online (Sandbox Code Playgroud)
也是一个Fidle
<div id="grandfather">
<div id="uncle"></div>
<div id="father>
<div id="me"></div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我在$("#me"),我想选择我的叔叔,使用类似的东西:
$("#me").find("#uncle")
$("#me").next("#uncle")
$("#me").prev("#uncle")
Run Code Online (Sandbox Code Playgroud)
怎么样 ?
html ×5
css ×3
javascript ×3
colors ×2
input ×2
java ×2
jquery ×2
swing ×2
asp.net ×1
c# ×1
capitalize ×1
css3 ×1
dom ×1
focus ×1
html5 ×1
jprogressbar ×1
jtextfield ×1
netbeans ×1
noscript ×1
overflow ×1
parents ×1
permissions ×1
placeholder ×1
position ×1
select ×1