2013-07-01 20 views
0

我在這裏有點難住!我有一個帶有兩個圖像鏈接的頁面,一個從屏幕底部向上滑動一個div(見下面的代碼1),另一個顯示隱藏的div(見代碼2)。獨立地,他們都是一種享受,但是當在同一頁面上點擊鏈接顯示隱藏的div時,代碼1似乎也被調用,從底部向上滑動div。圖像鏈接到一個JS代碼也調用錯誤的第二個

滑動div的鏈接在該頁面上正常工作。

我不知道這是很重要的,但頁面是一個PHP文件,其中一個頁面的代碼1部分,和代碼2 &以下額外文檔的一部分HTML通過PHP叫做包括。希望是有道理的

代碼1

<script> 
$(function() { 
    $("#clickme").toggle(function() { 
     $(this).parent().animate({top:'128px'}, {queue: false, duration: 500}); 
    }, function() { 
     $(this).parent().animate({top:'1083px'}, {queue: false, duration: 500}); 
    }); 
}); 
</script> 

代碼2

<script> 
function show() { 
    if(document.getElementById('clear_list_wrapperID').style.display=='none') { 
     document.getElementById('clear_list_wrapperID').style.display='block'; 
    } 
}  
</script> 

HTML - 這是問題的鏈接

<div class="clear_list_button" > 
<a href="#1" name="1" onclick="show();"> 
<img src="images/transparent.png" width="315" height="100" /> 
</a> 
</div> 
+0

發佈所有HTML –

+2

頁面上的#clickme?你可以展開html來顯示與問題鏈接相關的內容嗎? – JasonM

+0

#clickme是第一個php頁面上的空白div(我想是什麼Id將容器稱爲newby)。沒有什麼。我會發送一個鏈接到實際的頁面進行演示...... – user2406993

回答

0

問題不在於「詞彙表」窗格向上滑動。不是這樣。您的整個頁面視口正在向下滾動。

正是因爲這一點:

<a href="#1" 

#1錨進一步下跌的頁面。該鏈接將帶您到達它,有效地爲您滾動頁面。爲了防止這種情況發生,return falseshow函數的末尾。

function show() { 
    if(document.getElementById('clear_list_wrapperID').style.display=='none') { 
     document.getElementById('clear_list_wrapperID').style.display='block'; 
    } 
    return false; 
}  

編輯更好的功能會是這樣:

function show(e) { 
    e.preventDefault(); 
    if(document.getElementById('clear_list_wrapperID').style.display=='none') { 
     document.getElementById('clear_list_wrapperID').style.display='block'; 
    } 
}  

在這裏看到的preventDefault解釋:http://davidwalsh.name/javascript-events


編輯

原來可以通過將<a href="#1"更改爲<a href="#"

+0

謝謝你的偵探工作喬,我補充說,但我仍然有同樣的問題。任何其他想法? – user2406993

+0

我想我已經通過從「#1」中刪除1來完成它了。喬非常感謝你,我認爲你是一位明星 – user2406993

+0

刪除#1也會有效。 –

相關問題