/ / Mostrar / ocultar div com iFrame: Erro de sintaxe, expressão não reconhecida # - jquery, internet-explorer, sintaxe, erro de sintaxe, mostrar-ocultar

Mostrar / ocultar div com iFrame: Erro de sintaxe, expressão não reconhecida # - jquery, internet-explorer, sintaxe, erro de sintaxe, mostrar-ocultar

Eu tenho uma página com vários divs ocultos. Quando o link correspondente é clicado, o conteúdo div se revela enquanto oculta quaisquer outros divs que possam ter sido abertos. Eu tenho essa funcionalidade funcionando com sucesso sem erros Aqui. É um simples show / hide, nada extravagante.

Agora estou construindo uma nova página, que é bonitamuito exatamente o mesmo, exceto um div tem um iFrame, que está puxando em uma página com uma versão mais recente do jQuery sobre ele (o site em questão está rodando 1.3.2 que eu não posso atualizar, infelizmente).

Quando tento sair desta nova página clicandooutro link no site, vejo "Erro de sintaxe, expressão não reconhecida: #" no Firefox e no IE8, diz Linha: 19 Erro: exceção lançada e não capturada, seguida de "Erro de sintaxe, expressão não reconhecida: ad +" quando clico em Sim para depurar. Então eu recebo outro erro me dizendo "Objeto não suporta propriedade ou método" para esta linha:

            $("#" + $(this).attr("class")).show().siblings("div").hide();

Isso está acontecendo por causa da segunda biblioteca jQuery usada na página do iFrame? É a única coisa que posso pensar em por que ele funciona em uma página e não o outro.

Aqui está um violino com o código - se você clicar no link Início na parte superior da página, poderá ver o erro de sintaxe no console.

Aqui está o conteúdo completo da tag de scriptna página. Quando eu removo isso, não tenho erros, então é preciso que haja algo aqui. Notei a mistura de aspas simples e duplas, mas ainda recebi o erro quando tentei alterá-lo para um ou outro:

        $(document).ready(function() {
// Optional code to hide all divs
$("div" + ".menu").hide();
// Show chosen div, and hide all others
$("a").click(function ()
{
$("#" + $(this).attr("class")).show().siblings("div").hide();
});
});

Respostas:

0 para resposta № 1

seu erro jogando linha de código no seletor errado: $ ("." + $ (this) .attr ("class")). show (). irmãos ("div"). hide ();

Sua declaração seleciona um array vazio e este não tem nenhum método chamado "show ()"

Ou você realmente tem seu id como atributo de classe?