Синтаксис функции паузы язык сценариев JavaScript

У меня есть страница, которая автоматически загружает изменения каждые 2 секунды и внутри нужно поисковой службе, что написать для одного setInterval для того, чтобы он поддержал поиски.

В принципе функционируй совсем с этим кодом:

//refrescador del buscador
setTimeout(function(){ 
    $(".resultados_Inarticulos").load("Paginas/Articulos.php"); 
}, 10); //lo ejecuto nada mas entrar

var Pausado_Inarticulo = false;
var tiempo_Inarticulos = window.setInterval(function() {
    if(!Pausado_Inarticulo) { 
        $(".resultados_Inarticulos").load("Paginas/Articulos.php"); 
    } 
}, 2000);

$("#buscador_Inarticulos").keyup(function(){
    if ($('#buscador_Inarticulos').val() != null && $('#buscador_Inarticulos').val() != '') { 
        Pausado_Inarticulo = true; 
    } else { 
        Pausado_Inarticulo = false; 
    } 
}); //si esta vacio el buscador paro el refresco, sino sigo refrescando
//fin de refrescador del buscador

Случай состоит в том, что я хочу глобализировать эту функцию, чтобы не быть должным писать ее в каждой из страниц и перемещать ее в страницу общих функций для всех. Для одинокого этого я должен мочь меняться Pausado_Inarticulo из-за Pausado_XXX и я хотел бы поместить в каждой из страниц, которые я хочу, чтобы функционировал немного тип:

Pausar('Inarticulos');

И который это призвало к характерной функции, которая просто перемещая его информацию о Нестатьях выполняла бы на странице Нестатьи.

Какой синтаксис я должен использовать? Я попытался помещать на странице функций это, но совсем не:

function Pausar(pagina,div,url) { 

    //refrescador del buscador
    setTimeout(function(){ 
        $("."+div).load("Paginas/"+url); 
    }, 10); //lo ejecuto nada mas entrar

    var Pausado_+pagina = false;
    var tiempo_+pagina = window.setInterval(function() {
        if(!Pausado_+pagina) { 
            $("."+div).load("Paginas/"+url); 
        } 
    }, 2000);

    $("#buscador_"+pagina).keyup(function(){
        if ($('#buscador_'+pagina).val() != null && $('#buscador_'+pagina).val() != '') { 
            Pausado_+pagina = true; 
        } else { 
            Pausado_+pagina = false; 
        } 
    }); //si esta vacio el buscador paro el refresco, sino sigo refrescando
    //fin de refrescador del buscador

};

Но он не идет и дает мне ошибку синтаксиса в переменной var Pausado_+pagina = false;, так что я прихожу к заключению о том, что этот способ строить эту переменную - плохой.

Мне нужно, чтобы у этой переменной не было общего имени, так как страница загружает внутри самой страницы различные субстраницы одновременно тем, что я не могу призывать к переменным с тем же именем, или он затронет всех одновременно. Я должен мочь отличать ее от какой-то формы.

2
задан 12.01.2017, 03:47
0 ответов

Ты получаешь ошибку потому что + это не символ, который было возможно бы использовать в имени переменной, ни также динамическим способом, чтобы создавать имя в полет (как ты пробуешь).

То, что да ты мог бы делать, состоит в том, чтобы использовать эту переменную (которую я предполагаю, содержит единственного идентификатора такой страницы) как индекс в ассоциативном array (упрощая: индексы будут цепями вместо чисел). В этом случае да, что ты мог бы обобщать создание переменных для каждой страницы. Например, для страницы "abc", ты сделал бы Pausado["abc"] и tiempos["abc"]; для "xyz" он был бы Pausado["xyz"], и т.д.

Тогда ты мог бы делать что-то как это:

Заметь: я это не протестировал и смоги содержать ошибки, он для того, чтобы ты увидел общую идею

// tu variable con los manejadores de setInterval y Pausados (vacíos por defecto) 
var tiempos = [];
var Pausado = [];

function Pausar(pagina,div,url) { 

    //refrescador del buscador
    setTimeout(function(){ 
        $("."+div).load("Paginas/"+url); 
    }, 10); //lo ejecuto nada mas entrar

    Pausado[pagina] = false;
    tiempos[pagina] = window.setInterval(function() {
        if(!Pausado[pagina]) { 
            $("."+div).load("Paginas/"+url); 
        } 
    }, 2000);

    $("#buscador_"+pagina).keyup(function(){
        if ($('#buscador_'+pagina).val() != null && $('#buscador_'+pagina).val() != '') { 
            Pausado[pagina] = true; 
        } else { 
            Pausado[pagina] = false; 
        } 
    }); //si esta vacio el buscador paro el refresco, sino sigo refrescando
    //fin de refrescador del buscador

};
2
ответ дан 03.12.2019, 17:44