0
如果我在一个页面上并单击导航栏中的相应链接,我如何阻止链接重新加载页面(即什么也不做)当我目前在那位置?我仍然希望链接起作用,但只有当我已经在该页面上时才做任何事情。HTML链接什么也没做,如果已经在页面上
如果我在一个页面上并单击导航栏中的相应链接,我如何阻止链接重新加载页面(即什么也不做)当我目前在那位置?我仍然希望链接起作用,但只有当我已经在该页面上时才做任何事情。HTML链接什么也没做,如果已经在页面上
这是迄今为止没有“最好”的方式做到这一点我敢肯定,但我已经在过去需要在移动Web应用程序时完成可以用JavaScript/JQuery的实现。
var url = window.location.pathname,
urlRegExp = new RegExp(url.replace(/\/$/,'') + "$");
$('a').each(function(){
if(urlRegExp.test(this.href.replace(/\/$/,''))) {
$(this).click(function(event) {
event.preventDefault();
});
}
});
如果PHP是一个选项,你可以尝试这样的事:
\\Run this at top of page
<?php
function getPageName()
{
$filename = $_SERVER["SCRIPT_NAME"];
$breakfile = Explode('/', $filename);
$pfile = $breakfile[count($breakfile) - 1];
return $pfile;
}
?>
\\Modify HTML links to something like this
<?php if(getPageName() == 'FILENAME.html'){ ?>
\\Nav Link Here
<a href="#" >NAV TITLE</a>
<?php }else{ ?>
<a href="FILENAME.html" >NAV TITLE</a>
<?php } ?>
PHP是一个选项吗? –
这是香草JS,jQuery的,angularJS,角? – rjustin
@rjustin我宁愿只使用HTML,如果在[HTML链接,一筹莫展的时候,你是他们链接到网页上(所有可能 –
可能的复制https://stackoverflow.com/questions/13119401/html-links - 即,什么都不做的 - 当 - 你 - 是 - 上的页面,它们链接到) –