Pergunta

I'am realmente confuso e não sabe como chegar em, provavelmente, você pode me ajudar:)

I'e fez um html-página com um menu que carrega o conteúdo externo para uma div (tudo feito com jquery e ajax-carga).

Se eu quiser adicionar uma segunda função nada acontece e I'am não tem certeza sobre a nidificação, wheather é certo ou não.

Aqui estão duas funções, as primeiras cargas de um uma página html inteiro, o segundo carrega uma div externa em uma div do arquivo carregado anterior (esperança de que eu descrevi para que você possa compreendê-lo :)) (numRand é um número aleatório, não é importante para a questão).

function changeMenu(menupunkt) {
$(function(){
    $('#mainContent').fadeOut('fast', function(){ $("#mainContent").load(menupunkt+".html?"+numRand);});
    $('#mainContent').fadeIn('fast');});
    return false;

}

Aqui está o segundo código:

function changeSubMenu(submenupunkt,subdiv) {
    $(function(){
        $('#htmlContainer').fadeOut('fast',function(){ $("#htmlContainer").load(submenupunkt+".html?"+numRand+" div#"+subdiv);});
        $('#htmlContainer').fadeIn('fast');});
        return false;

}

Eu quero combinar os dois função para que eu possa chamar uma função:

someFunction(menupunkt,submenupunkt,subdiv)

Isso deve primeiro carregar o menupunkt.html e se essa ação foi concluída ele deve carregar o div.

Se eu quiser carregar um menupunkt e nenhum submenupunkt ou subdiv, como posso chamar a função?

Espero que eu poderia explicar a minha pergunta para que vocês podem segui-lo, pouco complicado eu sei:)

Agradecemos antecipadamente!

Foi útil?

Solução

Antes de mais nada

$(function() { .... code here .... }); 

é um atalho para

$(document).ready(function() { .... code here .... });

que é uma forma jQuery de criação de uma função a ser executada quando o DOM foi carregado. você estiver usando isso dentro de sua funções changeMenu e changeSubMenu que não é necessário ( menos está a executar ambas as funções imediatamente quando uma página começa a carregar, mas que seria um estranha maneira de coisas configurada).

O comando load() leva uma função callback que será executada quando a carga foi concluída. Por exemplo,

$("#mainContent").load(menupunkt+".html?"+numRand, [callback here]);

[callback] pode ser tanto uma função anônima (função inline) ou uma função chamada.

Espero que isso ajude

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top