簡體   English   中英

有人可以告訴我為什么這個js函數無法在加載時運行嗎?

[英]Can someone please tell me why this js function doesn't run on load?

我有:

 //Resize tabs - height when window size changes. Don't forget to reset niceScroll
 function recalc_tab_height () {
    //
    var wrapper_h = $(".ui-panel-content-wrap").outerHeight();
    var content_h = $(".ui-content").outerHeight();
    var current_h = $(".tab1").outerHeight();
    var newHeight = (wrapper_h - content_h) + current_h;
    //
    $(".tab1, .tab2, .tab3").css({"height":newHeight}).getNiceScroll().resize();
 }
 //Run once onLoad
 recalc_tab_height();

那應該調整加載的歌詞部分的大小以適合屏幕。 但是它根本沒有運行……有什么主意嗎? 它在ui.js中

http://mac.idev.ge:800/mobile-radio/

嘗試

$(function() {
    recalc_tab_height();
});

而不是最后一行。

$(...)$(document).ready(...)的快捷方式,並且在頁面完全加載后立即執行,因此您可以處理DOM元素屬性。

試試這個:需要設置$(document).ready

$(document).ready(function(){

 //Run once onLoad
 recalc_tab_height();

});

要加載此功能,您應該在身體上使用它作為

<body onload="recalc_tab_height();" >

或通過jQuery

$(document).ready(function() {
  recalc_tab_height();
});

准備好dom后包裝函數調用。

$(document).ready(function(){
    recalc_tab_height();
});

在文檔“ 准備就緒 ”之前,無法安全地操縱頁面。 jQuery為您檢測到這種就緒狀態。 $(document).ready()中包含的代碼僅在頁面文檔對象模型(DOM)准備好執行JavaScript代碼后才能運行。 一旦整個頁面(圖像或iframe)(不僅是DOM)准備就緒, $(window).load(function(){...})中包含的代碼將運行。

因此,您必須在$(document).ready({...});內調用函數$(document).ready({...}); $(window).load(function() { ... });

我將css()更改為animate(),並且有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM