Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将页面重定向到另一个页面,然后执行jQuery操作_Javascript_Jquery_Html_Redirect - Fatal编程技术网

Javascript 将页面重定向到另一个页面,然后执行jQuery操作

Javascript 将页面重定向到另一个页面,然后执行jQuery操作,javascript,jquery,html,redirect,Javascript,Jquery,Html,Redirect,我有一个带有图片和类别名称的滑块的页面,第二个带有图库的页面,在这个页面上是另一个带有类别图标的滑块。当你点击slider1时,它应该将你重定向到第2页(图库)并将slider2设置到正确的位置,我的意思是slider2应该跳转到正确的幻灯片,并且具有完全相同的类别,以便在图库中显示正确的图片。 重定向对我来说没有问题,但我不知道在重定向到页面后应该如何编写函数。 现在我有 var slide_jump; $('div.zobacz').bind("click touchstart",

我有一个带有图片和类别名称的滑块的页面,第二个带有图库的页面,在这个页面上是另一个带有类别图标的滑块。当你点击slider1时,它应该将你重定向到第2页(图库)并将slider2设置到正确的位置,我的意思是slider2应该跳转到正确的幻灯片,并且具有完全相同的类别,以便在图库中显示正确的图片。 重定向对我来说没有问题,但我不知道在重定向到页面后应该如何编写函数。 现在我有

 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\u jump)
-slider2跳转到正确的幻灯片,但我不知道我应该使用它。应该是在第2页加载之后,我知道有类似的事情

$(window).load(); $(document).ready(); 

但是我应该用它吗?我知道吗?如果所有内容都已包含在类似这样的内容中。

这用于加载所有DOM元素时

$(document).ready();
当您处理图像并想知道所有图像何时完成加载时,您应该使用

$(window).load();  
在负重状态下,你可以做跳跃式滑行

$(window).load(function()
{
    //Do the jump slide
});
编辑:

阅读querystring的示例。

下面是一个例子:

//Wait when done loading images
jQuery(window).load(function () 
{
    //Read querystring
     var selectedSlide = $.QueryString("slided");

     //Jump to slide
     slider2.jump(selectedSlide)
});
我是从脑子里打出来的,所以这只是为了这个想法

有关加载和就绪的更多信息:

我建议使用window.onload


请参阅以更好地理解

您需要做的是将变量传递到新页面,然后在页面加载时处理该值。像这样的方法应该会奏效:

第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);
}); 
$(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"));  
} 
注意:我不知道为什么要使用超时,是
glide2.current()异步操作?如果不是,则不需要超时。如果是,最好使用回调


第2页代码:

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);
}); 
$(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
函数。

不确定这是否真的可以作为答案。这是有帮助的,但仍然有很多问题没有解决。例如,如何知道在第1页中选择了哪个跳转?好的,谢谢,但我仍然不知道应该在哪里写。我应该在哪里使用$(window.load()?在该功能中,单击?或者其他地方?musefan,我知道哪个跳转,glide2.current()告诉我单击div时显示了哪个幻灯片,slider2.jump(glide2.current()的结果)应该重定向或跳转到slider 2中的同一张幻灯片。如果您使用$(location.attr('href',url)将其重定向到另一个页面。我认为您应该在该页面上使用另一个js文件,然后从$(window.load)函数开始,然后在其中执行跳转幻灯片。在您的代码中,我看到您将所选幻灯片放入变量中。你也应该像在查询字符串中一样发送它,并在另一页上阅读它。musefan,谢谢,所以你试图告诉我加载()后我丢失了所有变量,对吗?我不知道您需要将这个
幻灯片\u jump
值传递到另一个页面,这可以通过在URL查询字符串中添加一个参数来完成。例如
www.example.com?jump=42
,然后您需要了解如何在第2页
$(窗口)中检索该值。load()
事件(我记不起我的头顶了,否则将作为答案)