0

我有:

 //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/

4

6 回答 6

6

尝试

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

而不是你的最后一行。

$(...)是一个快捷方式,$(document).ready(...)在页面完全加载后立即执行,以便您可以处理DOM元素属性。

于 2013-09-05T08:13:55.683 回答
1

试试这个:需要设置$(document).ready

$(document).ready(function(){

 //Run once onLoad
 recalc_tab_height();

});
于 2013-09-05T08:14:47.420 回答
1

要加载此功能,您应该在 body 上使用 this 作为

<body onload="recalc_tab_height();" >

或通过 jquery

$(document).ready(function() {
  recalc_tab_height();
});
于 2013-09-05T08:16:36.373 回答
0

I changed css() to animate() and it works.

于 2013-09-23T17:38:59.110 回答
0

当dom准备好时包装函数调用。像这样尝试

$(document).ready(function(){
    recalc_tab_height();
});
于 2013-09-05T08:15:00.937 回答
0

在文档“准备就绪”之前,无法安全地操作页面。jQuery 会为您检测到这种准备状态。$(document).ready()中包含的代码只会在页面文档对象模型 (DOM) 准备好执行JavaScript代码时运行。包含在$(window).load(function() { ... })中的代码将在整个页面(图像或 iframe)(而不仅仅是 DOM)准备好后运行。

所以你必须在里面调用你的函数 $(document).ready({...});或者$(window).load(function() { ... });

于 2013-09-05T08:22:51.997 回答