我有一个带滑块的页面,其中包含图像和类别名称,第二页带有图库,在此页面上是另一个带有类别图标的滑块。当你点击slider1时,它会将你重定向到page2(图库)并将slider2设置为正确的位置,我的意思是slider2 shoud跳转到适当的幻灯片,具有完全相同的类别以在图库中显示正确的图片。 重定向对我没有问题,但我不知道在重定向到页面后我应该如何编写函数。 现在我有
var slide_jump;
$('div.zobacz').bind("click touchstart", function() {
slide_jump = glide2.current(); //get number of slide on slider1 to know to which slide should jump slider2
setTimeout(function() {//redirecting must be after I get current slide on slider1
var url = "http:***.html";
$(location).attr('href', url);
}, 100);
//HERE IS MY PROBLEM
});
有一个功能:slider2.jump(slide_jump)
- slider2跳转到正确的幻灯片,但我不知道我是否应该使用它。它应该在page2加载之后,我知道有类似
$(window).load(); $(document).ready();
但我应该知道吗?如果一切都已经是这样了。
答案 0 :(得分:0)
这用于加载所有DOM元素的时候。
$(document).ready();
当您处理图像并想知道所有图像何时完成加载时,您应该使用
$(window).load();
在载入中,您可以进行跳转滑动。
$(window).load(function()
{
//Do the jump slide
});
编辑:
读取查询字符串的示例。 http://www.darlesson.com/jquery/querystring/?language=en&province=Alberta&province=Ontario&province=Quebec
这是一个例子:
//Wait when done loading images
jQuery(window).load(function ()
{
//Read querystring
var selectedSlide = $.QueryString("slided");
//Jump to slide
slider2.jump(selectedSlide)
});
我已经从头脑中输入了它,所以它只适用于这个想法。
有关加载和就绪的更多信息:Difference between $(window).load() and $(document).ready() functions
答案 1 :(得分:0)
我建议使用window.onload。
请参阅window.onload vs $(document).ready()以便更好地理解
答案 2 :(得分:0)
您需要做的是将变量传递给新页面,然后在页面加载时处理该值。这样的事情应该有效:
第1页代码:
var slide_jump;
$('div.zobacz').bind("click touchstart", function() {
slide_jump = glide2.current(); //get number of slide on slider1 to know to which slide should jump slider2
setTimeout(function() {//redirecting must be after I get current slide on slider1
var url = "http:***.html" + "?jump=" + slide_jump;//CHANGE HERE
$(location).attr('href', url);
}, 100);
});
注意:我不知道您使用超时的原因,glide2.current();
是异步操作吗?如果没有,则不需要超时。如果是,最好使用回调。
第2页代码:
$(window).load(function()
{
var slide_jump = getQueryStringValue('jump');
slider2.jump(slide_jump);
});
function getQueryStringValue(key) {
return unescape(window.location.search.replace(new RegExp("^(?:.*[&\\?]" + escape(key).replace(/[\.\+\*]/g, "\\$&") + "(?:\\=([^&]*))?)?.*$", "i"), "$1"));
}
注意:getQueryStringValue
功能已被from here。