1

我想知道是否可以将变量从“If”、“Else If”或“Else”语句中传递到另一个部分,而无需 PHP,只需使用 JQuery。


jQuery代码:

$('#Info-Side-Tabs a').click(function() {
    var clicked = $(this).attr('href');
    if (clicked == "#Map-Selection-Info-Close") {
        $('#Info-Side-Tabs li').removeClass('active');
        $(this).parent().addClass('active');
        $(this).attr("href","#Map-Selection-Info-Open");
        $(this).text('Open Me');
        $('#Map-Selection-Info').animate({marginLeft: '978px'}, 1000);
        $('#ATWI80C-Map').animate({width: '900px' }, 1000);
    } else if (clicked == "#Map-Selection-Info-Open") {
        $(this).parent().removeClass('active');
        $(this).attr("href","#Map-Selection-Info-Close");
        $(this).text('Close Me');
        $('#Map-Selection-Info').animate({marginLeft: '670px'}, 1000);
        $('#ATWI80C-Map').animate({width: '600px' }, 1000);
    } else {
        $('#Info-Side-Tabs li').removeClass('active');
        $(this).parent().addClass('active');
        var activeTab = $(this).attr('href');
        $('#tab-content > div:visible').hide();
        $(activeTab).show();
        return false;
    }
});

在上面,它将关闭或打开带有标签的我的辅助信息。如果单击不等于“#Map-Selection-Info-Close”,我需要设置名称的变量。我想这样做的原因是#Map-Selection-Info-Close/#Map-Selection-Info-Open 在选项卡切换器上,但是它们没有内容,所以它保留以前的内容但切换关闭时向活跃的班级上课。打开后,您可以看到以前的内容,但是我不知道如何将活动类设置回显示的当前内容。

我对 JQuery 很陌生,这是迄今为止我做过的最好的事情,我想我现在点击后可以轻松地拿起所有东西,但是如果可能的话,我不知道如何做上述和我感谢您在做我希望实现的目标时提供的任何帮助和/建议。

最好的祝福,

蒂姆

4

1 回答 1

1

我一直在寻找答案,阅读文章并学习并使用新的关键词来定义新的搜索结果。我了解到我首先需要创建一个全局变量;

// To set fully global for all your functions, set it here
var lastclicked;
$('#Info-Side-Tabs a').click(function() {
    var clicked = $(this).attr('href');
    if (clicked == "#Map-Selection-Info-Close") {
        // functions
    } else if (clicked == "#Map-Selection-Info-Open") {
        // functions
    } else {
        // functions
    }
});

所以我将我的新变量“lastclicked”设置为没有值。下一步是能够使用此全局变量的键值。如果你想在任何地方设置这个全局变量,你可以省略'var',例如;

$('#Info-Side-Tabs a').click(function() {
    var lastclicked;
    var clicked = $(this).attr('href');
    if (clicked == "#Map-Selection-Info-Close") {
        // functions 
    } else if (clicked == "#Map-Selection-Info-Open") {
        // functions
    } else {
        lastclicked = clicked;
    }
    alert(lastclicked);
});

我希望这对其他试图找到类似解决方案的人有所帮助。

最好的祝福,

蒂姆

于 2013-04-02T20:02:03.930 回答