jquery - 在 Jquery 中引用文件名
问题描述
我喜欢 Jquery 的这一点,如果链接与当前页面 URL 匹配,它会向链接添加一个活动类。但是,要使其正常工作,它需要包含完整 URL 的链接。
$("a[href*='" + location.pathname + "']").addClass("active");
我怎样才能要求它只使用文件名,即 index.html?
我不熟悉Jquery。谁能指出我正确的方向?
提前致谢。
解决方案
您发布的 jQuery 是这样做的:
查找所有
<a>
元素具有 href 属性的
包含以下短语:地址栏中的任何内容
对于每个匹配的,添加类“活动”
因为 jQuery 搜索包含地址栏中内容的标签,所以如果地址包含 a 标签的 href 中的内容的子集,您应该没问题。
前导斜线也有可能是一个问题。这将从“路径名”中删除第一个字符 - 例如,如果 URL 是“/index.html”,它将搜索“index.html”。
$("a[href*='" + window.location.pathname.slice(1) + "']").addClass("active");
如果此答案没有帮助,请在答案下方发表评论以提供更多信息(即为什么此答案不能解决问题 - 遗漏了什么?)以便其他观众可以提供帮助。
推荐阅读
- react-native - 反应原生元素 - 安卓 -
onPress 参数未触发.......仅在调试时 - html - 是否有一种纯 CSS 方法来检测文本是否已换行并赋予其不同的样式?
- reactjs - 如何在 react + socket io 应用程序中显示聊天
- javascript - 如何计算日期以不允许日期小于当天?
- python - 遍历一个 Python 列表,但第一个元素在末尾?
- notepad++ - Notepad++ 在 HTML 字符串中查找
- mysql - mysql where subquery with not in 工作,但 subquery with in 不工作
- python - 如何使用 requests-html 查找亚马逊产品名称?
- svg - 为什么一个 SVG 文本元素有四种不同的字体大小值?
- typescript - 在映射条目的循环中定义元组类型