Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript <;a>;不带href的脚本链接="#&引用;_Javascript_Html - Fatal编程技术网

Javascript <;a>;不带href的脚本链接="#&引用;

Javascript <;a>;不带href的脚本链接="#&引用;,javascript,html,Javascript,Html,我的web应用程序使用了大量用于脚本编写的锚定链接(这是我10多年前作为Dreamweaver用户时养成的习惯),现在我开始怀疑这是否必要 我不知道为什么要首先使用——我猜href属性的存在会导致浏览器应用:link和:vistedpsuedo类,从而简化样式表。它还使浏览器隐式应用可能需要的cursor:pointer属性 我使用jQuery(在使用MooTools短暂的一段时间之后),链接在没有href=“#”属性和值的情况下也能正常工作,所以我应该完全删除属性并修改样式表以补偿删除:lin

我的web应用程序使用了大量用于脚本编写的
锚定链接(这是我10多年前作为Dreamweaver用户时养成的习惯),现在我开始怀疑这是否必要

我不知道为什么要首先使用
——我猜
href
属性的存在会导致浏览器应用
:link
:visted
psuedo类,从而简化样式表。它还使浏览器隐式应用可能需要的
cursor:pointer
属性


我使用jQuery(在使用MooTools短暂的一段时间之后),链接在没有
href=“#”
属性和值的情况下也能正常工作,所以我应该完全删除属性并修改样式表以补偿删除
:link
psuedo类吗?还有什么我可能遗漏的,href属性嵌入锚元素的任何类型的半文档化巫毒吗?

不知道任何巫毒,但是如果你在页面上有很多链接,并且你拉href,那么你必须添加一个类名,在每个类名上加上蓝色和下划线。换言之,为什么要在浏览器都准备好了的情况下引入更多的工作呢。因此,简而言之,请坚持您所知道的内容,我怀疑如果您删除href,页面将无法进行个人验证,我更喜欢使用
href=“javascript:void(null);”
,为浏览器提供一个href,它不会干扰哈希的任何其他使用

我注意到的关于href-less链接的唯一区别是浏览器在默认情况下不会给它们加下划线,所以只需添加该样式,您就应该很好了。

,不可单击,也不符合页面的选项卡顺序

如果您希望链接可以通过键盘导航,这对辅助功能()非常重要,则需要执行以下操作之一:

  • 将元素更改为
  • 保留
    [href]
    属性
  • 添加
    [tabindex=“0”]
    [role=“button”]
    [role=“link”]
    中的一个(可能还有一些样式)
有关
[role]
属性的更多信息,请参阅的

更改标记 如果您没有理由保留
[href]
属性,那么您最好使用
元素:

<button type="button">
        ^^^^^^^^^^^^^
您需要监听
按键
事件,并触发
单击
事件以输入和空格

保留标记 如果保留
元素及其
[href]
属性,则有许多选项可供选择

真正的联系 E.x

如果您需要为禁用JS的用户提供支持,那么您可以将他们引导到一个页面,该页面在没有JS的情况下执行相同的功能

通过扩展,这还包括提供文档片段链接,以链接到同一文档中的内容。例如,可切换区域可标记为:

<a href="#more" class="toggleable">Read More</a>
<div id="more">Lorem ipsum dolor sit amet</div>

我有这个问题,特别需要一个手风琴标题成为

其输出为:


我正在实现一个HTML、CSS、JS模板来做出反应,这行代码对我来说非常适合:

<a href={() => false}> Link </a>

我对react js也有同样的问题

Line 273:  Links must not point to "#". Use a more descriptive href or use a button instead  jsx-a11y/href-no-hash
这样可以消除我使用的错误

之前:

 <a 
      href="#"
      className="banner-signup signup-btn envy-font-sans-bold"
      onClick={(e) => this.gonext()}
    >
     NEXT
    </a>

使用href=“#”位置上的href=“#”/”


在html中使用

<a id="calendar" href="javascript:void(0)">
        <div class="icon-w">
          <div class="fa fa-calendar"></div>
        </div>
     <span>Calendar</span>
</a> 


根据锚元素的HTML4 TR部分,href属性不是必需的(),那么它实际上就是工作努力的结果……你知道,为什么要重新发明轮子。我刚刚读了这篇小文章(),评论中的建议似乎建议改为使用
。它的语义价值也比你所说的简单的
更大。@David,
span[role=“button”]
在语义上与
相同,而且更易于风格化。我在HTML5或(X)HTML4的任何地方都找不到“role”属性-我确实在目前正在审查的XHTML扩展中找到了对它的引用。你有这方面的来源吗?@David,这是Web易访问性计划的可访问富Internet应用程序()规范的一部分。具体地说,。另外,你打电话给我询问文档的情况也很好。有时我忘记了在我写答案的时候把我想到的资源链接起来;这是其中一种情况。只需在函数中使用
return false
preventDefault()
,即可防止将哈希更改为
。也会从HTML中删除一些字节。这也是一种与内容安全策略不兼容的做法,除非您希望允许内联脚本,这通常是一件不好的事情。在我的情况下,这是因为我没有用文本填充标记,所以在我更正它之后,很好。我否决了你的答案,因为@zzzzBov的答案中已经提到了这种技术。感谢你提供的信息。你应该使用
tabindex
而不是设置一个假的
href
值。
 <a 
      href="#"
      className="banner-signup signup-btn envy-font-sans-bold"
      onClick={(e) => this.gonext()}
    >
     NEXT
    </a>
 <a 
      href="#/"
      className="banner-signup signup-btn envy-font-sans-bold"
      onClick={(e) => this.gonext()}
    >
     NEXT
    </a>
<a id="calendar" href="javascript:void(0)">
        <div class="icon-w">
          <div class="fa fa-calendar"></div>
        </div>
     <span>Calendar</span>
</a>