Jcarousel从查询字符串开始的位置

时间:2011-08-03 22:03:35

标签: javascript jquery query-string jcarousel

好吧我正在尝试混合两件事,由于某种原因它不起作用。首先我正在使用Jcarousel 使用此插件,您可以设置“开始”位置。所以,如果我继续下去:     jQuery("#mycarousel").jcarousel({ scroll: 1, start: 3, initCallback: mycarousel_initCallback, // This tells jCarousel NOT to autobuild prev/next buttons buttonNextHTML: null, buttonPrevHTML: null });

然后通过直接进入第三张幻灯片完美地工作。现在我想从查询字符串中获取该起始位置,所以我抬起头来,在这里我发现了这个: How can I get query string values in JavaScript?

使用该函数非常棒我可以获取查询字符串并将其应用于“开始”正确吗?好吧不是那么容易。

这是我的代码,由于某种原因,它显示了查询字符串返回的幻灯片数量:S

`function getParameterByName(name) {

name = name.replace(/ [[] /,“\ [”)。replace(/ []] /,“\]”);

var regexS =“[\?&]”+ name +“=([^&#] *)”;

var regex = new RegExp(regexS);

var results = regex.exec(window.location.href);

if(results == null)

return "";

否则

return decodeURIComponent(results[1].replace(/\+/g, " "));

}

//骑着旋转木马......

jQuery(document).ready(function(){

var startpage = getParameterByName("vista");

jQuery("#mycarousel").jcarousel({

    scroll: 1,

    start: startpage,

    initCallback: mycarousel_initCallback,

    // This tells jCarousel NOT to autobuild prev/next buttons

    buttonNextHTML: null,

    buttonPrevHTML: null

});

});`

非常感谢任何帮助:)

好的我必须从这里回答它,因为我还是这个页面的新手,所以这就是我如何解决它:

jQuery(document).ready(function() {
    var startpage = getParameterByName("vista");
    jQuery("#mycarousel").jcarousel({
        scroll: 1,
        start: parseInt(startpage),
        initCallback: mycarousel_initCallback,
        // This tells jCarousel NOT to autobuild prev/next buttons
        buttonNextHTML: null,
        buttonPrevHTML: null
    });

必须parseInt函数返回的值,因为它是一个字符串而Jcarousel无法识别字符串:)

感冒了一会儿:(

1 个答案:

答案 0 :(得分:0)

我会在jquery轮播调用之前重新发送查询字符串值:

// Snippet assuming asp.net with c#
var myStart = <%= Request["vista"] ?? 1 %>;
jQuery("#mycarousel").jcarousel({ scroll: 1, start: myStart, ... });