有条件地打开基于URL查询字符串的弹出视频

时间:2012-12-06 15:03:41

标签: javascript jquery url parameters

我有一个页面(somepage.aspx),上面有一个弹出视频。使用js $('.showVideo').live('click', function() {

点击链接时,视频会打开

我有另一个页面(otherpage.aspx),并希望使用某种自动打开视频弹出窗口的URL参数链接到/somepage.aspx。根据视频打开的url参数/ somepage.aspx?video=1 ...之类的内容。我如何将其添加到现有的js中?

由于

1 个答案:

答案 0 :(得分:1)

使用此功能,您可以检测到网址中存在?video=1

function getURLParameter(name) {
    return decodeURI(
        (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
    );
}

来源:Get escaped URL parameter 归功于https://stackoverflow.com/users/726427/pauloppenheim

然后你可以这样做:

if(getURLParameter('video')==1){
  $(".showVideo").trigger('click');
}

编辑:

$(document).ready(function(){               


    function getURLParameter(name) {
        return decodeURI(
            (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
        );
    }
    if(getURLParameter('video')==1){
      $(".showVideo").trigger('click');
    }
});

将参数名称(视频)包含在引号getURLParameter('video')中。

另一个编辑

将Click事件处理程序包装在一个函数中,基本上删除所有形式:

$('.showVideo').live('click', function() {
    //build overlay
    (...)
    return false;
});

将其剪切并粘贴到函数中。然后从内部调用函数:

$('.showVideo').live('click', function() {
    my_function();
});

然后将之前的代码更改为:

if(getURLParameter('video')==1){
     my_function()
}