WEB学习笔记8-添加javascript禁用的提示
最常用的方式是使用<noscript>标签,此标签就是当javascript被禁用或者不被支持的时候提供一种代替方式,即<noscript>标签的内容会在此时被浏览器解析,作为javascript不可用时的备选方案。
此标签的常规用法就是当javascript不可用时显示提示信息。
<script type="text/javascript">
//一些操作
</script>
<noscript>
<p>浏览器不支持javascript</p>
</noscript>
但是<noscript>标签不够灵活,有些时候javascript不可用并不是因为脚本被禁用导致,因此最好不要使用<noscript>标签,而是更改设计,让页面从无脚本模式过度到有脚本模式。即从不支持脚本到支持脚本的渐进增强,从而保证两种模式下页面都可用。
<from action ="calcSquare.php">
<p>
<lable for x>Number</lable>:
<input id "x" name="x" type="number">
</p>
<input id ="submit" type=submit value="Calculate Square">
<script>
var x=document.getElementById("x")
var output=document.createElement('p');
output.textContent='Type a numeber ;it will be squared right then!';
x.form.appendChild(output);
x.form.onsubmint=function(){return false};
x.output=function(){
var v=x.valueAsNumber;
output.textContent=v+'squared is '+v*v;
};
var submit=document.getElementById('submint');
submit.parentNode.removeChild(submit);
</script>
</form>
一般很难设计出合理的渐进增强效果。最佳做法是提示用户javascript已经被禁用,并同时提供一个功能简单,不依赖javascript的代替网站供用户继续浏览做到平稳的降级,也可以直接跳转到一个不依赖脚本的代替页面中。
例如百度首页添加了如下的代码
<noscript><meta http-equiv="refresh" content="0";url=/baidu.html from=noscript"/></noscript>
为了使页面脚本不可用时还能正常展示,可能需要针对部分模块设置区别脚本的禁用和启用时页面的不用风格。常用的方法是给页面HTML标签添加一个名为no-jsd的class,并在脚本中添加移除此class的逻辑,在样式代码中可以这样设置不同状态下的样式:
/*脚本启用时对应的样式*/
.product{
}
/*脚本不可用时,通过覆盖以上定义的样式或者添加额外的样式设置不同的外观*/
.no-js.product{
}
WEB学习笔记8-添加javascript禁用的提示的更多相关文章
- [原创]java WEB学习笔记66:Struts2 学习之路--Struts的CRUD操作( 查看 / 删除/ 添加) 使用 paramsPrepareParamsStack 重构代码 ,PrepareInterceptor拦截器,paramsPrepareParamsStack 拦截器栈
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- [原创]java WEB学习笔记75:Struts2 学习之路-- 总结 和 目录
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- Java Web 学习笔记 1
Java Web 学习笔记 1 一.Web开发基础 1-1 Java Web 应用开发概述 1.1.1 C/S C/S(Client/Server)服务器通常采用高性能的PC机或工作站,并采用大型数据 ...
- Java Web学习笔记之---EL和JSTL
Java Web学习笔记之---EL和JSTL (一)EL (1)EL作用 Expression Language(表达式语言),目的是代替JSP页面中复杂的代码 (2)EL表达式 ${变量名} ( ...
- [原创]java WEB学习笔记95:Hibernate 目录
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- java web 学习笔记 编码问题总结
java web 学习笔记 编码问题总结 1.非form表单中提交的中文参数---------------------------传递给Servlet服务器时,默认以iso-8859-1解码 ...
- R语言可视化学习笔记之添加p-value和显著性标记
R语言可视化学习笔记之添加p-value和显著性标记 http://www.jianshu.com/p/b7274afff14f?from=timeline 上篇文章中提了一下如何通过ggpubr ...
- [原创]java WEB学习笔记11:HttpServlet(HttpServletRequest HttpServletRsponse) 以及关于 Servlet 小结
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- Java Web学习笔记之---JSP
Java Web学习笔记之---JSP (一)JSP常用语法 (1)HTML注释 <!--所要注释的内容 --> 在客户端显示一个注释. (2)隐藏注释 <%--所要注释的内容--% ...
随机推荐
- Linux下启动weblogic服务
第一步找到目录:cd weblogic/user_projects/domains/odm_dat_dc_domain/bin/ 第二步查看进程: ps -ef|grep java 第三步杀进程: k ...
- HTTP Basic和Digest认证介绍与计算
一.说明 web用户认证,最开始是get提交+把用户名密码存放在客户端的cookie中的形式:在意识到这样不安全之后逐渐演变成了post提交+把用户凭证放到了服务端的session中的形式(当然ses ...
- 小程序数据绑定点赞效果切换(交流QQ群:604788754)
如果对本例有更好的意见和建议,希望给予留言或是加群跟群主联系,交流学习. WXML: <block wx:for="{{nums}}" wx:for-index='idx' ...
- learning coap protocol
reference: http://coap.technology/spec.html
- C# 加载并显示菜单
1,支持cui和cuix. 2,菜单组重复加载或显示,C#下都会崩溃.所以要判断. 3,菜单加到最后. public static AcadMenuGroup LoadMenu(AcadMenuGro ...
- 常用的lamp环境以及一些依赖包的安装
- 软件151 王楚博 maven的导入
一.maven 包的导入 清单如下: <!-- Inherit defaults from Spring Boot --> <parent> <groupId>or ...
- hosts文件被修改后的惨案
在公司MAC电脑上/etc/hosts中尝试反向解析一个ip到localhost, 即:xxx.xxx.xxx.xxx localhost 然后发现tomcat起不来;
- Nginx做流媒体服务Windows版实现直播
声明:网上有很多关于Linux系统的配置,这里就不记录了.刚开始搭建直播室,用的是Java语言, Java开源的流媒体服务有Red5,但是很久没更新了,而且文档较少不容易上手,对于直播功能相对要求较低 ...
- js --"说声爱你不容易"
<div class="tit"><label>yourName:</label><input type="text" ...