Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Patrique

[Resolvido] Migrar Prototype para jQuery

Recommended Posts

Fala galera, estou aqui migrando uma aplicação com prototype para jQuery, já fiz 99.9% só falta isso

 

Em prototype esta assim

 

$('aplicacao').filterByTagName(ValorProcura);

Como fazer isso em jquery?

Compartilhar este post


Link para o post
Compartilhar em outros sites

oque isso faz ?

 

talvez seja o metodo .find() oque você procura

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala ai pessoa, agradeço a quem esta ajudando, valew.

 

Não deu certo, eu acho que estou me confundindo.

 

Seguinte, tenho uma aplicação que anteriormente eu fazer um trabalho em conjunto entre prototype e o flash.

 

o aplicacao não é um objeto div em class ou id, ele é um elemento que eu coloco dentro da embed flash dinamicamente.

 

desta forma

 

var id = "teste";

 

if(navigator.userAgent.indexOf("MSIE")>-1){
       aplicacao = $(id+'Obj');
    }else{
       aplicacao = $(id+'Emb');
    }

e depois faço a requisição colocando o elemento aplicacao

 

$('aplicacao').filterByTagName(searchValue);

acho que primeiramente terei que arrumar essa parte

 

aplicacao = $(id+'Obj');

Mas estou me embolando, não sei como colocar isso em jQuery, e depois chamar

 

$('aplicacao').filterByTagName(searchValue);

Quem puder me ajudar, desde já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o aplicacao não é um objeto div em class ou id, ele é um elemento que eu coloco dentro da embed flash dinamicamente.

 

desta forma

 

var id = "teste";

 

desculpa.. não entendi

aplicacao não é:

-> id = #aplicacao

-> class = .aplicacao

-> div = ??

-> em ??

-> aplicacao = <aplicacao></aplicacao> ?

 

hein?! então, é oque ?

assim, pensando em HTML...

 

pega o FireBug, coloca sobre esse elemento estranho, e diga qual é o código html que representa isso.

se você me falar que aplicacao, é uma sei lá, layer do flash.. ai não tenho a menor idéia do que fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então to no mesmo barco que o bruno

 

aplicacao = $(id + "obj") <------ isso necessáriamente tem que ser o nome de um elemento

 

Pode ser ele Object ou Embed ou até mesmo o nome de um dos params

 

E o find vai se comportar do mesmo jeito

 

Se você fizer $("object").find("o que você quer procurar")

 

Você vai procurar na tag object o elemento que você ta procurando

Então não entendo o que você ta procurando :)

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou postar o code, para tu ver se entende

 

function MontaBugtvFlash(url) {

    var id = "bugtv";
    var width = "100%";
    var height = "100%";
    var wmode = "transparent";

    var swfbugtv=[];

    swfbugtv.push('<object id="'+id+'Obj" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" height="'+height+'" width="'+width+'">');
	swfbugtv.push('<param name="movie" value="'+url+'">');
	swfbugtv.push('<param name="quality" value="high">');
	swfbugtv.push('<param name="wmode" value="'+wmode+'">');
	swfbugtv.push('<param name="menu" value="false">');
	swfbugtv.push('<embed src="'+url+'" id="'+id+'Emb" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" wmode="'+wmode+'" menu="false" height="'+height+'" width="'+width+'">');
	swfbugtv.push('</object>');

    document.write(swfbugtv.join(""));

    if(navigator.userAgent.indexOf("MSIE")>-1){
       aplicacao = $(id+'Obj');
    }else{
       aplicacao = $(id+'Emb');
    }

};

var procura = queryString.split("/")[0].toLowerCase();
if (queryString.indexOf("/")>0){
      var procurando = queryString.split("/")[1].toLowerCase();
   }else{
      var procurando = "";
}
if (procura=="tag"){
   $('aplicacao').filterByTagName(procurando);
}

não é uma div não, repare que ele trabalha em conjunto com o id do embed do flash.

 

Desculpe-me por não saber explicar melhor é que to meio confuso com isso ai rsrsrs se eu manter o script protype ele funciona, porém gostaria de deixar apenas com jQuery e é ai que não to conseguindo passar isso para jQuery.

 

Desde já agradeço a ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ta mais ainda ta faltando coisa...

 

Quem é essa queryString????

 

E id é id :P tanto em object como div é tudo a mesma coisa é só o container que detém o elemento

Só que não entendi o que cargas d'agua você ta procurando

 

você ta fazendo assim:

 

$("#bugtvObj").find(O que você quer procurar)

Ou

$("#bugtvEmb").find(O que você quer procurar)

 

Só que com prototype :)

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

^_^

 

este é o querystring

 

var queryString = location.search.toString().replace("?","");

já tentei anteriormente da maneira que você passou agora, porém não foi rsrsrs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou te mandar uma MP pera ae :)

 

------------- // -------------- Edited :D

 

Da um exemplo ai da url do queryString para eu saber o que você ta procurando que agora eu me perdi de vez...

 

Pq o find como o filterByTagName ele procura um elementro dentro de um elemento com a id passada para ele.

 

 

Tipo se eu tiver assim:

<ul id="lista">
 <li>1</li>
 <li>2</li>
</ul>

 

E eu for procurar por $("#lista").find("li").eq(0).val()

Ele vai me mostrar o primeiro elemento da lista ou seja vai mostrar o 1

 

Se você tivesse trabalhando com prototype basicamente é a mesma coisa ;)

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Thiago, como mandei para MP pra ti, aboli o uso d jquery ou prototype, fiz direto no flash utilizando location pois o efeito seria o mesmo e assim não me sulga tanto.

 

Acabei me confundindo muito ai nesse code rsrsrsrsrsrs, mas deu certo aqui.

 

Agradeço a ajuda sua e do William, muito obrigado.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Puts.... FINALMENTE!!!

 

Depois de muitas horas na luta, consegui uma solução, depois de muitos testes.

 

Primeiramente estava deste jeito no prototype

 

ie

aplicacao = $(id+'Obj');

outros

aplicacao = $(id+'Emb');

Pela lógica ficaria assim no jQuery

 

aplicacao = $('#'+id+'Obj');
aplicacao = $('#'+id+'Emb');

Mas não tava dando certo... dai recorri a várias maneiras... e necaaaaa com a ajuda dos amigos ai nada rsrsrsrs

 

Consegui fazer para jQuery utilizando uma gambiarra, porém sou teimoso e dai fui testar em javascript puro... testei assim

 

aplicacao = document.getElementById(id+'Emb');

e funfou, fiquei mais puto pois isso provava que no jquery tinha que entrar da maneira que estava tentando anteriormente....

 

Li muito o faq do jQuery e achei uma coisa interessante que para o meu caso funcionou... bastou eu fazer assim

 

aplicacao = jQuery('#'+id+'Emb').get(0);

E VIVA! agora não me pergunte porque so funciona assim :/ doidera.

 

Meu code ficou assim

 

if(jQuery.browser.msie){
   aplicacao = jQuery('#'+id+'Obj').get(0);
}else{
   aplicacao = jQuery('#'+id+'Emb').get(0);
}

Valew galera, ta ai para quem tiver trabalho em trabalhar com flash embedado hehehehe

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.