我又被卡住了;
我在php-File的标签中有一个jQuery-Function,它获取了Gallery的Screenwidth。当页面加载并且运行良好时调用它。但是现在我希望再次调用该函数,每次调整窗口大小以使新的Screenwidth正确。一种可能是使用window.location.href在调用window.resize时重新加载整个页面,但这不是我想要的。
有没有办法只重新加载函数(或编写的整个javascript代码块)而无需重新加载链接的js文件和html-Structure?我只是想重新加载这个单一的功能:
jqSlider(function(){
var container = jqSlider('div.sliderGallery');
var ul = jqSlider('ul', container);
var fensterBreite = jqSlider("#preloader").outerWidth();
var itemsWidth = 2559 - fensterBreite;
jqSlider('.slider', container).slider({
min: 0,
max: itemsWidth,
handle: '.handle',
stop: function (event, ui) {
ul.animate({'left' : ui.value * -1}, 500, 'linear');
},
slide: function (event, ui) {
ul.css('left', ui.value * -1);
}
});
答案 0 :(得分:0)
我承认我对你的语法有点困惑,如果我不在这里,我道歉,所以请告诉我这是不是你需要的,我会尽力修改代码来满足您的需求。您似乎将匿名函数传递给方法jqSlider,因此正在进行以下假设:
var mySliderFunc = function () {
var container = jqSlider('div.sliderGallery');
var ul = jqSlider('ul', container);
var fensterBreite = jqSlider("#preloader").outerWidth();
var itemsWidth = 2559 - fensterBreite;
jqSlider('.slider', container).slider({
min: 0,
max: itemsWidth,
handle: '.handle',
stop: function (event, ui) {
ul.animate({ 'left': ui.value * -1 }, 500, 'linear');
},
slide: function (event, ui) {
ul.css('left', ui.value * -1);
}
});
};
jqSlider(mySliderFunc);
$(window).resize(mySliderFunc);
var mySliderFunc = function () {
var container = jqSlider('div.sliderGallery');
var ul = jqSlider('ul', container);
var fensterBreite = jqSlider("#preloader").outerWidth();
var itemsWidth = 2559 - fensterBreite;
jqSlider('.slider', container).slider({
min: 0,
max: itemsWidth,
handle: '.handle',
stop: function (event, ui) {
ul.animate({ 'left': ui.value * -1 }, 500, 'linear');
},
slide: function (event, ui) {
ul.css('left', ui.value * -1);
}
});
};
jqSlider(mySliderFunc);
$(window).resize(mySliderFunc);