2011-05-05 50 views
0

我是jquery的相對新手;我的問題涉及範圍,如果任何人有耐心把我連接到有用的東西,也許插件。jquery插件/ scop問題

下面的代碼工作,但我必須把腳本放在同一個div中才能真正工作。出於CMS集成/可讀性的目的,我無法將其移動到頁面頂部,或者理想情況下移動到其他庫/源文件。任何指針將不勝感激,謝謝。

<a id="hide" href="#" style="z-index:20;">hide</a> 
<a id="show" href="#" style="z-index:20;">show</a> 

<div id="block" style="position:absolute;background:#fff;width:450px;height:450px;"> 
</div> 
<div id="myBox" style="width:450px;height:450px;" > 
<ul id ="menuElem" class="CMSListMenuUL"> 
    <li><a href="#">a</a></li> 
    <li><a href="#">b</a></li> 
    <li><a href="#">c</a></li> 
</ul>   
</div> 
<script> 

$("#show").click(function() { 
    $("#block").fadeOut(1000); 
    return false; 
}); 
$("#hide").click(function() { 
    $("#block").fadeIn(1000); 
    return false; 
}); 
</script> 
+0

原因是如果你把它放在頁面完全加載到DOM之前運行的頭部,如果你把它放在一個'$(document).ready()'事件中,那麼它會在其引入之後運行DOM(當文檔準備就緒時換句話說)。 – Chad 2011-05-05 20:17:45

+0

啊對!謝謝,我仍然陷入了我的php/C++思維模式。 – Drimgere 2011-05-06 12:52:19

回答

1

試試這個

<script> 
$(document).ready(function() { 
    $("#show").click(function() { 
    $("#block").fadeOut(1000); 
    return false; 
    }); 
    $("#hide").click(function() { 
    $("#block").fadeIn(1000); 
    return false; 
    }); 
}); 
</script> 

這也是在等待腳本後才文件已加載運行。

+0

如需更多解釋,請查看http://api.jquery.com/ready/ – ajm 2011-05-05 20:16:20

+0

解決所有問題,謝謝! – Drimgere 2011-05-06 12:52:39