zoukankan      html  css  js  c++  java
  • JS平稳退化

    Javascript作为一种前端脚本语言,主要功能是用于改善前端的用户体验。我们看见一些网页的显示效果,比方说菜单显示隐藏,图标移动和文字滚动大多是基于JS来实现的。作为改善用户体验的存在,通俗的讲就是起个锦上添花的表现效果,而不能影响正常的后台逻辑和最基本功能的实现。

    通俗地讲,javascript平稳退化就是如果一个浏览器完全不支持js或者禁用js的时候,它的正常功能不会受到任何影响。比方说一个网站使用了大量javascript来优化页面,我们现在把浏览器的javascript给禁用掉,这个网站的显示效果会变得比较糟,但是基本功能不会受到影响:登录页面可以正常登录,表单可以正常提交等。

    一些网站如果禁用js,它的基本功能就会受到严重影响,比方说某个链接打不开,表单无法提交等,这些都是不能实现平稳退化的。

    举个比较简单的例子,就像表单提交,通常可以用<input type="submit">来实现提交功能,也可以使用Jquery的AJAX提交来实现:

    $.post("/Words/CheckAnswer/", { Ask: Ask, Answer: Answer, Ids: Ids}, function (data) {...})

    这样子也可以实现表单提交,但是如果浏览器的js被禁用了,这个就无效了。

    如果非要在一些场合使用ajax提交方法又要兼顾js的平稳退化,我对于它的处理方法是预先在form中定义好一个submit按钮:

    <form id="form" method="post" action="~/Words/CheckAnswer"> 
    <input type="submit" id="sub"></form>

    JS代码中默认设定submit不可见

    <script>
    window.onload=function () {
    document.getElementById("sub").setAttribute("style","display:none")
    }

    </script>

    一旦js被禁用,对submit的隐藏就会失效,显示出来的submit按钮可以继续完成表单提交的功能

  • 相关阅读:
    PeerJS
    OpenEMM 2013 发布,电子邮件营销软件
    feh 2.9 发布,图像查看器
    PyPyODBC 0.9.2发布 纯Python实现的pyodbc替代库
    MariaDB 5.5.29, 5.3.12, 5.2.14, 5.1.67
    CouchDB 1.3.0的新特性以及算法的强化
    Boost 1.53.0 发布,可移植的C++标准库
    ActiveMQ 5.8.0 发布,JMS 消息服务器
    MySQL 5.5.30 发布
    CloverETL Designer 3.3.1 发布
  • 原文地址:https://www.cnblogs.com/XCCU-2015/p/5025813.html
Copyright © 2011-2022 走看看