I am trying to build a navigation that determines the page the user in on and gives that link a different command to show a div tag if you click it on the current page. Example: you click on the home page to go to the home page. if you are on the home page and you click home again it causes a div tag to fade in. I have the div tag working but I don't know how to apply more than one command to an tag. I want the navigation to just be a sitewide include incase I have to make further updates to the site. Right now I have individual navigation on each page.
问问题
63 次
3 回答
2
$_SERVER['REQUEST_URI']
在 PHP 中,您可以通过使用 in和相关条目的值来了解已请求的页面。
然后,您可以用它来决定您在哪个页面上,并根据请求的页面更改菜单的显示。
这允许您包含来自许多不同文件的菜单模板,无论这些文件位于页面结构中的哪个位置。
一个简短的示例,此处包含您建议的PHP_SELF
条目和非目录结构:
<?php
$currentPage = basename($_SERVER["PHP_SELF"]);
/** define the menu **/
$menu = array(
array('index.php', 'home');
);
/** process the menu **/
foreach ($menu as &$entry) {
list($page, $name) = $entry;
$isCurrent = $currentPage === $page;
if ($isCurrent) {
$href = '#';
$extra = ' onclick="MM_effectAppearFade(display, 2500, 0, 100, true)"';
} else {
$href = $page;
$extra = '';
}
$entry = array_merge($entry, array($href, $extra));
}
unset($entry);
/** output the menu **/
?>
<ul>
<?php foreach($menu as $entry) { ?>
<li>
<?php
list($page, $name, $href, $extra) = $entry;
printf(
'<a href="%s"%s>%s</a></li>',
$href, $extra, htmlspecialchars($name)
);
?>
</li>
<?php } ?>
</ul>
于 2012-10-17T13:37:38.187 回答
0
对标签应用多个命令
我假设您onlick
在元素中使用属性。不要那样做。从单独的脚本中分配任何事件处理程序。您可以根据需要将尽可能多的事件绑定到元素(也可以根据需要对事件进行尽可能多的回调)。
jQuery 示例:
jQuery( '#menu a' ).on( 'click', function( event ) {
if( event.target.attr( 'href' ) == window.location ) {
event.preventDefault();
jQuery( '#specialDivPopup' ).show();
}
} );
于 2012-10-17T13:39:22.013 回答
0
简单的在onclick@同一个页面上放一个jquery hide div函数(试一下逻辑)
@ Home Page -> (点击代码以隐藏主页 DIV)
@ MYPAGE Page -> (PUT CODE to HIDE MYPAGE DIV ON CLICK)
于 2012-10-17T13:40:37.943 回答