先週、opencart で e ショップを作成しました。現在、デフォルトのトップメニューをカスタマイズしようとしています。私がやりたいことは、子要素が選択されていても親を強調表示したままにすることです
この js を使用して現在のページを強調表示します。
<script type="text/javascript" >
function extractPageName(hrefString)
{
var arr = hrefString.split('/');
return (arr.length < 2) ? hrefString : arr[arr.length-2].toLowerCase() + arr[arr.length-1].toLowerCase();
}
function setActiveMenu(arr, crtPage)
{
for (var i=0; i < arr.length; i++)
{
if(extractPageName(arr[i].href) == crtPage)
{
if (arr[i].parentNode.tagName != "DIV")
{
arr[i].className = "current";
arr[i].parentNode.className = "current";
}
}
}
}
function setPage()
{
hrefString = document.location.href ? document.location.href :document.location ;
if (document.getElementById("menu") !=null)
setActiveMenu(document.getElementById("menu").getElementsByTagName("a"),extractPageName(hrefString));
}
window.onload=function()
{
setPage();
}
</script>
どんな助けでも大歓迎です。
ps 私が何を作りたいのか理解できない場合は、私の英語で申し訳ありません。