示例链接:http://localhost/test/page.php?success
我很好奇。而且我也是JavaScript的新手,所以这并不是一个惊喜,但我理解下面的代码,我只是不知道为什么它能解决我似乎理解的问题。见this question for more reference.
我有这个JavaScript:
<script type="text/javascript">
jQuery(function($) {
var path = window.location.href.split( '?' )[0];
$('ul a').each(function() {
if (this.href === path) {
$(this).addClass('sub-menu active');
$(this).parent().closest("li").addClass('active');
$(this).parent().parent().closest("li").addClass('active');
}
});
});
</script>
补充工具栏:
<li class="sub-menu"> // Sidebar with no submenu
<a class="" href="page1.php">
<i class="icon-calendar"></i>
<span>This is page 1</span>
</a>
</li>
<li class="sub-menu"> // Sidebar with a submenu
<a href="javascript:;" class="">
<i class="icon-group"></i>
<span>This has sub pages</span>
<span class="arrow"></span>
</a>
<ul class="sub">
<li><a class="" href="page2.php">This is page 2</a></li>
<li><a class="" href="page3.php">This is page 3</a></li>
</ul>
</li>
代码将活动类放到侧栏上的菜单中,其中href等于当前URL。但是window.location.href
会返回整个网址,但是href中的内容只是page.php
。那么为什么this.href === path
有用呢?当window.location.href.split( '?' )[0]
返回http://localhost/test/page.php
且href只是page.php
时。
答案 0 :(得分:2)
将锚的href属性规范化为绝对值。
请参阅this示例: HTML:
, value = c(578L, 510L, 1707L, :
duplicate 'row.names' are not allowed
In addition: Warning message:
non-unique values when setting 'row.names':
JS:
<a href="test.html">Test</a>
答案 1 :(得分:0)
在此实例中,相对URL正在解析为包含a元素的文档的位置。您可以使用基本元素来控制相对URL的解析。