【问题标题】:Client side JavaScript best practices客户端 JavaScript 最佳实践
【发布时间】:2012-03-23 17:20:09
【问题描述】:

我能想到的唯一例子是

<a href="valid.html" onClick="someFunction()>Click Here</a>

相对于

<a href="javascript:;" onClick="someFunction()>Click Here</a>

基本上,如果用户禁用了 JavaScript,您希望您的网页能够正常工作。

那么我的问题是,还有哪些其他技术可以处理未启用 JavaScript 的用户?

【问题讨论】:

    标签: javascript


    【解决方案1】:

    您总是希望您的href 指向您要加载的信息的正确url。(我假设这是您的目标)

    您的someFunction() 可能是从目标页面加载部分信息的ajax 调用。正确设置href 有利于渐进增强。

    【讨论】:

      【解决方案2】:

      如果用户禁用了 JavaScript,请向他们发送消息。在我看来,没有理由继续为不支持 JavaScript 的浏览器或禁用它的用户进行开发。

      回答你的问题...

      function someFunction() { }
      
      // using jquery
      $(document).ready(function() {
          var els = document.getElementsByTagName('a');
      
          for(i=0; i<els.length; i++) {
              // more logic could go here
              $(els[i]).click(function() { someFunction(); });
          }
      });
      

       

      <a id="optional" href="/link/to/page">Click Here</a>
      

      【讨论】:

      • 如果 JS 对你的应​​用来说是必不可少的(也就是说,如果你正在构建一个没有 JS 就没有用的超级 ajaxy 网络应用,而不是一个网站),那我会同意的。但是对于大多数网站来说,如果它在禁用 JS 的情况下工作会更好,而您只需使用 JS 添加一些额外的 spiff。你知道,Googlebot 不会说 JS。
      • @cHao 我完全同意你的看法——我忘了​​提到我专门讨论的是动态 Web 应用程序。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-18
      • 1970-01-01
      • 2021-03-15
      • 2012-02-25
      • 2020-08-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多