PaisNeto Posted August 22, 2016 at 06:19 PM Report #598254 Posted August 22, 2016 at 06:19 PM (edited) Boa tarde, Estou a fazer um site, onde tenho um ficheiro que contem o menu do site parte do codigo do menu <nav class="nav-main mega-menu"> <ul class="nav nav-pills nav-main" id="mainMenu"> <li class="active"><a href="index.php">Home</a> </li> parte codigo do index <body> <?php include ("menu.php"); ?> por defeito a classe "active" está para a página index.php, o que eu queria é que quando fosse para a página contactos.php a classe deixasse de estar atribuida à página index.php e ficasse atribuida à página dos contactos. obrigado Edited August 22, 2016 at 08:06 PM by PaisNeto
anolsi Posted August 23, 2016 at 09:33 AM Report #598265 Posted August 23, 2016 at 09:33 AM Podes usar uma função do tipo: function ScopedInclude($file, $params = array()) { extract($params); include $file; } E ao invés de fazeres o include directo, fazeres: ScopedInclude('menu.php', array('includerFile' => basename(__FILE__))); Depois no menu.php só tens que verificar se o filename coincide com aquele nó ou não para colocar a class active. Uma ideia interessante seria fazer utilizando javascript e jquery para seleccionar directamente o elemento via selector e adicionar a class. Mas isto só se estiveres à vontade com JS senão limita aos if do PHP para colocares o active "Nós somos o que fazemos repetidamente, a excelência não é um feito, e sim, um hábito."Não respondo a questões por PM que possam ser colocadas no fórum!
PaisNeto Posted August 23, 2016 at 09:55 AM Author Report #598266 Posted August 23, 2016 at 09:55 AM (edited) Bom dia, Não estou a vontade com o js e nem com php, vou vendo uns exemplos e tento adaptar ao que necessito... eu comprei um template em html e queria coloca-lo um pouco "dinâmico" eu hoje não vou ter oportunidade de explorar esta solução, mas amanhã já digo o que consegui fazer com isto. Obrigado Edited August 23, 2016 at 09:56 AM by PaisNeto
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now