尝试实现if,if,if语句但遇到问题

时间:2015-06-25 17:24:32

标签: javascript jquery

所以基本上我正在尝试创建一个ie9特定的if语句,基本上说如果菜单崩溃= true从左边移动3个类,如果它是假的则相反...似乎没有得到这个声明工作虽然有人可以帮忙吗?这就是我到目前为止......

var ms_ie = false;
var ua = window.navigator.userAgent;
var old_ie = ua.indexOf('MSIE ');
var new_ie = ua.indexOf('Trident/');

if ((old_ie > -1) || (new_ie > -1)) {
    ms_ie = true;
}
if ( ms_ie ) {        
    if $('#menu').multilevelpushmenu({Collapsed: false}) {
        $( ".navbtn, .submenu-ctn, .logo-title" ).animate({
            left: "+=310",
        }, 500);             
        else {
            $( ".navbtn, .submenu-ctn, .logo-title" ).animate({
                left: "-=310",
            }, 500);
        }
    }

2 个答案:

答案 0 :(得分:1)

这与你的" if,if,if语句&#34 ;;它只是if语句中的一个错误:

if $('#menu').multilevelpushmenu({Collapsed: false}) {

括号!!!

if ($('#menu').multilevelpushmenu({Collapsed: false})) {

当您为网络开发时,请尝试使用浏览器的开发工具。他们会告诉你关于语法错误的所有信息。

答案 1 :(得分:0)

正如其他人在评论中指出的那样,您的代码在语法上并不有效。您需要一个额外的结束标记,如下所示。

您尚未包含相关的HTML& CSS可能与此同时发生,所以很难准确判断出你的目标是什么。

var ms_ie = false;
var ua = window.navigator.userAgent;
var old_ie = ua.indexOf('MSIE ');
var new_ie = ua.indexOf('Trident/');


if ((old_ie > -1) || (new_ie > -1)) {
    ms_ie = true;
}
if ( ms_ie ) { // CT1

    if ($('#menu').multilevelpushmenu({Collapsed: false})) { // Parentheses around condition.
        $( ".navbtn, .submenu-ctn, .logo-title" ).animate({
            left: "+=310",
        }, 500); 

        else {
            $( ".navbtn, .submenu-ctn, .logo-title" ).animate({
                left: "-=310",
            }, 500);
        }
    } // close CT 1 - last one included in example.
} // Needs one more closing tag :)

查看this answer使用Javascript检测IE的问题。可能会生成更清晰,更易读的代码版本。您可以从该功能获得数字IE版本。