[jquery].hide()以及.show()函數function無法正常運作?無法正常隱藏或顯示物件?

  • 17
  • 0

[jquery].hide()以及.show()函數function無法正常運作?無法正常隱藏或顯示物件?

.hide()以及.show()函數function無法正常運作的時候,通常都是這個element的上層的parent element有一些css相衝突。
這兩個function就是在css裡面設定目標element的display屬性是否為none來達成隱藏或是顯示的效果,然而當parent element有css是display:block之類的時候,
就會把目標element的css覆蓋掉overwrite,然後.hide(), .show()就會失效。

這時候如果還是想要隱藏或是顯示目標element的時候,建議把他"移動出畫面之外"即可。

可以先在css加上一個class,此class的動作就會將element的位置調整到畫面之外

<style>
    .HideEle
    {
        position: absolute;
        left: -9999px;
    }
</style>


然後再於jquery裡面加上此css的class即可隱藏目標ele

$('div[id*=targetEle').addClass('HideEle');


大概是這樣,因為很常碰到這類問題,寫個筆記紀錄一下方便以後快速參考。。。。


參考資料:
 工作經驗