标准化attr(’href’)在jQuery中返回

假设我在网页wwww.example.com/foo.html上有一个链接

在Firefox中, attr('href')返回’?action = run’

在IE中,它返回’ http://www.example.com/foo.htmlhttps://stackoverflow.com/?action=run ‘

  1. 当使用attr(’href’)时,通常会出现哪种行为(是否有任何标准?)
  2. 是否有可能让IE返回’?action = run’?

jQuery 应该已经为你处理了这个, 你可以在这里看到它 ,并在这里进行快速测试 。

如果浏览器尚未浏览,则jQuery将其标准化,通过$.support.hrefNormalized (IE中$.support.hrefNormalized false)进行检查,它对hrefsrcstyle属性执行此操作 。

是否有可能你使用的是一个非常旧版本的jQuery而没有这样做? 如果这样升级就是你的答案。 还要确保你确实使用.attr('href')来获得规范化,而不是直接使用.href