jQueryを使用してページをdivに動的にロードしているため、デフォルトのリンクを防止しようとしていますhref=home
。
//initialize home page as active on load up and deactivate link
var activePage = $('a[href$="home"]');
var activePageHref = activePage.attr('href');
activePage.attr('href', '#');
$('a').click(function(e) {
e.preventDefault();
//set the page clicked on
var page = $(this).attr('href');
//check to see if there are any extras to url for php
var pageCheck = page.split('?');
//sort page type
if (pageType == null) {
//dynamically load the page in div bodycontent
$('#bodycontent').load(page + '.php');
} else {
$('#bodycontent').load(page + '.php?' + pageCheck[1]);
}
//pull up last disabled link for navigation
var setOld = $('a[href$="' + activePageHref + '"]');
setOld.attr('href', '' + activePageHref + '');
//set the new disabled link for navigation
activePage = page;
//make link inactive
$(this).attr('href', '#');
});
クリックイベント関数で発生する必要があることをさらに追加するまで、最後に return false で問題ありませんでしたが、正確には、この部分:
//pull up last disabled link for navigation
var setOld = $('a[href$="' + activePageHref + '"]');
setOld.attr('href', '' + activePageHref + '');
//set the new disabled link for navigation
activePage = page;
//make link inactive
$(this).attr('href', '#');
今、e.preventDefault(); は、私が起こる必要があることを行う正しい方法を理解していることから、すべてのリンクですべてが発火するのを止めています。私は立ち往生しています。デフォルトのアクションを停止し、最後に追加したエクストラで構築した関数を使用して、ナビゲーションをきれいにする必要があります。
また、追加するには、このナビゲーションの ul に関連付けられたホバー機能がありますが、問題を引き起こさないはずなので含めませんでしたが、必要に応じてここに配置できます。それが、このドキュメント準備機能の唯一の他のことです。