当我使用$(窗口).resize()
时,我在控制台中收到错误我已经创建了一支笔来说明正在发生的事情:http://codepen.io/anon/pen/LRYGxK?editors=1111
var bg = $('.inner');
$(window).resize('resizeBackground');
function resizeBackground() {
bg.height($(window).height() + 60);
console.log(bg.height());
}
resizeBackground();
我在控制台中遇到的错误是:
未捕获的TypeError:((n.event.special [g.origType] ||(中间值))。handle || g.handler).apply不是函数
不确定我说错的地方是诚实的。
答案 0 :(得分:1)
您可以在调整大小窗口时调用resizeBackground
函数,如下所示。
$(window).resize(function resizeBackground() {
bg.height($(window).height() + 60);
console.log(bg.height());
});
工作演示:link
答案 1 :(得分:0)
你的问题就像这个一样简单
('resizeBackground')
正在传递一个字符串 -
只需传递功能
(resizeBackground)
见这里:http://codepen.io/alexjamesbrown/pen/yaLZzj
完整示例
var bg = $('.inner');
$(window).resize(resizeBackground);
function resizeBackground() {
bg.height($(window).height() + 60);
console.log(bg.height());
}
resizeBackground();
为了简化它,你可以试试这个:
http://codepen.io/alexjamesbrown/pen/pEogAL
var bg = $('.inner');
$(window).resize(function(){
bg.height($(window).height() + 60);
console.log(bg.height());
});
答案 2 :(得分:0)
$(window).resize()调用需要一个处理函数 - Function(Event eventObject)。
像那样使用
$(window).resize(function(){
resizeBackground();
});
答案 3 :(得分:0)
如何尝试像bofore这样的代码:
var bg = $('.inner');
// If you want that in load (just for explanation)
$(document).ready(function() {
resizeBackground();
});
// On window resize
$(window).resize(function() {
resizeBackground();
});
// Generic function, called by the callbacks..
function resizeBackground() {
bg.height($(window).height() + 60);
console.log(bg.height());
}
<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
<div class="inner"></div>
这样你就可以在“.resize()”回调语法中调用你创建的函数。
您可以在官方jQuery调整大小文档中获得更多信息:https://api.jquery.com/resize/