当用于JS事件时,的理想值是什么?

13 浏览
0 Comments

当使用JS事件时,对于的理想值是什么?这个问题的出现原因是,作者建议在使用JS事件时,应该将链接指向一个动作,当完全禁用JavaScript时,“做正确的事情”。也就是说,如果可能的话,它应该产生与客户端操作相同的效果,或者一些步骤,可以产生相同的效果。如果这不可能或不可取,那么在应用了事件处理程序之前,不应该显示该链接。也就是说,最初将其设置为"display: none;",然后在应用事件处理程序之后使用"show()"。

解决方法是,在HTML代码中的标签中添加class属性,用于标识该链接只在JavaScript可用时显示。然后,在JavaScript代码中,使用jQuery选择器找到具有该class属性的链接,并将其显示出来。

完整的文章如下:

我的建议是,当完全禁用JavaScript时,让链接指向一个动作,可以“做正确的事情”。也就是说,如果可能的话,它应该产生与客户端操作相同的效果,或者一些步骤,可以产生相同的效果。如果这不可能或不可取,那么在应用了事件处理程序之前,不应该显示该链接。也就是说,最初将其设置为"display: none;",然后在应用事件处理程序之后使用"show()"。

在HTML代码中,可以将需要在JavaScript可用时显示的链接,添加一个class属性,例如"class='javascript-only'"。然后,在JavaScript代码中,使用jQuery选择器找到具有该class属性的链接,并将其显示出来。下面是一个示例代码:

<a href="/something/add" class="add-item javascript-only">Add Another</a>
<script type="text/javascript">
   $(function() {
       $('.add-item').click( function() {
           ...
           return false; // important!
       });
       $('.javascript-only').show();
  });
</script>

0
0 Comments

问题的原因是为了在不启用JavaScript的情况下,为访问者提供执行相同操作的URL链接。然而,使用href="#"会导致以下问题:如果忘记在onclick处理程序中返回false(或者用户禁用了JavaScript),滚动条会移动到页面顶部。这也会改变内容焦点,如果有人正在使用某种屏幕阅读器。

解决方法是使用以下代码来替代href="#"

Link

这样,如果JavaScript被禁用或者onclick处理程序没有返回false,页面不会滚动到顶部,也不会改变内容焦点。

0
0 Comments

当使用JS事件时,标签的理想值是什么?这个问题的出现是因为需要在JS事件处理程序中取消默认的链接行为,同时提供一个友好的信息页面来告知用户必须启用JavaScript才能使用该功能。解决方法是在标签中指定一个JavaScript禁用的页面作为链接地址,并在点击事件处理程序中取消默认行为。以下是一个例子:

Foo

然后,在处理点击事件时,通过返回false或调用preventDefault来取消默认行为。JavaScriptDisabled.htm页面上只需要显示一个友好的信息,如"您必须启用JavaScript才能使用该功能"。这是一个很好的解决方案,受欢迎且被认可。大家觉得这个思路不错,可以在自己的项目中使用。

0