jquery スライダーでのナビゲーションなど、いくつかの機能をサポートするための小さな JavaScript があります。最近、ナビゲーション ボタンをクリックすると、本来の動作をするだけでなく、URL "#" に余分な文字が作成されることに気付きました。スクリプトを確認したところ、追加されている場所と理由がわかりましたが、ナビゲーションをクリックしても追加されない問題を修正する方法がわかりません。誰かが助けてくれるか、少なくとも私を正しい方向に向けてくれる可能性はありますか. 以下の完全なコードを参照してください
var fadeTimer;
var slideSpeed = 8000;
jQuery(document).ready(function() {
// add nav buttons
var slideCount = jQuery('#fader ul li').length;
var randomnumber=Math.floor(Math.random()* slideCount);
for ($i = 0; $i < slideCount; $i++) {
jQuery('#faderNav').prepend('<a href="#"><\/a>');
}
jQuery('#faderNav a').eq(randomnumber).addClass('active');
jQuery('#fader ul li').eq(randomnumber-1).addClass('active');
var next = jQuery('#fader ul .active').next();
if (next.length > 0) {
} else {
var next = jQuery('#fader ul li:first');
}
jQuery('#fader ul .active').fadeOut().removeClass('active');
next.fadeIn().addClass('active');
// work out nav width
var navBtn = jQuery('#faderNav a');
var navBtnWidth = navBtn.outerWidth(true);
var navWidth = navBtn.length * navBtnWidth;
// set nav width
jQuery('#faderNav').width(navWidth);
// add negative margin to center the nav
var negMarg = navWidth / 2;
jQuery('#faderNav').css({'margin-left':'-'+negMarg+'px'});
// start timer
var fadeTimer = setInterval("faderTimer()", slideSpeed);
jQuery('#faderNav a').live('click',function() {
clearInterval(fadeTimer);
var index = jQuery(this).index('#faderNav a');
jQuery('#faderNav a').removeClass('active');
jQuery('#faderNav a').eq(index).addClass('active');
jQuery('#fader ul .active').fadeOut().removeClass('active');
jQuery('#fader ul li').eq(index).fadeIn('slow').addClass('active');
});
});
// FADE FUNCTION
function faderTimer() {
var next = jQuery('#fader ul .active').next();
if (next.length > 0) {
} else {
var next = jQuery('#fader ul li:first');
}
var navIndex = next.index('#fader ul li');
jQuery('#faderNav a').removeClass('active');
jQuery('#faderNav a').eq(navIndex).addClass('active');
jQuery('#fader ul .active').fadeOut().removeClass('active');
next.fadeIn('slow').addClass('active');
}