yekxmerr Posted July 18, 2012 at 12:13 PM Report #469145 Posted July 18, 2012 at 12:13 PM (edited) Boas tardes pessoal, venho aqui requisitar a vossa ajuda para um pequeno problema que tenho com o javascript. Estou a tentar alterar um Widget do Blogger (Popular Posts) onde ele não me retorna as imagens(thumbnails) como deve ser, faz sempre o resize para 72px, e utilizei uma pequena função para fazer o resize desta imagem para o tamanho que queria, mas ele apenas estica a imagem dos 72px. O problema é o seguinte, no blogger ele chama as imagens através do picasa, e coloca esses 72px na url, exemplo: <img height="72" border="0" width="72" src="https://lh5.googleusercontent.com/--12312312312easeraeqwew/s72-c/imagemdexemplo.jpg" alt=""> Onde o que pretendo alterar é aquele .. /s72-c/ para um valor manual, como por exemplo /s800/ (se a imagem for de 800px). Alguém consegue me ajudar nesta pequena situação? Sou muito leigo em Javascript, mas basta um empurrão para conseguir resolver isto, e o que preciso é mesmo do código que me substitua aquele /s72-c/ por um valor que eu coloque manualmente(variável). Muito obrigado desde já. Edited July 18, 2012 at 12:16 PM by yekxmerr
HappyHippyHippo Posted July 18, 2012 at 12:31 PM Report #469148 Posted July 18, 2012 at 12:31 PM exemplo muito simplista var string; // variável com o atributo do elemento a ser alterado (neste caso o "href" var result = string.replace("s72-c", "s800"); // a variável result terá o atributo com os dados alterados IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
yekxmerr Posted July 18, 2012 at 03:02 PM Author Report #469177 Posted July 18, 2012 at 03:02 PM Bom, parece que afinal não me expliquei tão bem. Tenho de fazer isto através do Jquery, mas não consigo meter a funcionar: <script type='text/javascript'> //<![CDATA[ var imgsrc = document.getElementById('PopularPosts2').getElementsByTagName('img').src; var result = imgsrc.replace("s72-c", "s800"); $(".popular-posts .item-thumbnail img").each(function() { var oldSize = $(this).attr("src"); $(this).attr("src", imgsrc); $(this).attr("src", $(this).attr("src").replace("/s"+oldSize+"-c/", "/s"+result+"-c/")); }); //]]> </script>
HappyHippyHippo Posted July 18, 2012 at 03:10 PM Report #469183 Posted July 18, 2012 at 03:10 PM (edited) Bom, parece que afinal não me expliquei tão bem. Parece que tenho de fazer isto através do Jquery, mas não consigo meter isto a funcionar: então usas jquery e usas 'document.getElementById' ???? isso para não falar que estás a baralhar completamente o código .... /* ISTO ERA UM EXEMPLO !!! var imgsrc = document.getElementById('PopularPosts2').getElementsByTagName('img').src; var result = imgsrc.replace("s72-c", "s800"); */ // para todos os elementos encontrados do selector $(".popular-posts .item-thumbnail img").each(function() { // alterar o atributo "src" com o resultado da troca na própria string do atributo "src" $(this).attr('src', $(this).attr('src').replace('/s72-c/', '/s800-c/')); }); Edited July 18, 2012 at 03:10 PM by HappyHippyHippo IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
yekxmerr Posted July 18, 2012 at 03:23 PM Author Report #469189 Posted July 18, 2012 at 03:23 PM (edited) HappyHippyHippo... Muito obrigado! Desculpa lá o trabalho, é que eu não lido muito com javascript e ainda estou a aprender a linguagem em si, mas funcionou muito bem. Agora só preciso de alterar os atributos do width, etc mas com o teu exemplo já chego lá. Cumps ! Edited July 18, 2012 at 03:24 PM by yekxmerr
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now