#addclass
Explore tagged Tumblr posts
Text
Manipulación de Clases CSS con jQuery: addClass(), removeClass() y hasClass()
Introducción En el desarrollo web, la manipulación dinámica de clases CSS es una tarea común que permite cambiar el estilo de los elementos HTML en tiempo de ejecución. jQuery, una popular biblioteca JavaScript, facilita esta tarea con métodos como addClass(), removeClass() y hasClass(). Estos métodos se integran perfectamente con la función $(), que es el corazón de jQuery para seleccionar…
#addClass#CSS#desarrollo web#Estilos Dinámicos.#hasClass#HTML#Interacción Dinámica#Javascript#jquery#Manipulación de Clases#removeClass
0 notes
Text
Universal Scroll Button(Autochange Direction) For Any Host
Hey, do you have a site with a lot of forums? Does your host allow you to use Javascript? Boy does this weirdo have a deal for you! For the low low price of free, you can get right now access to a scroll button that swaps directions when you scroll automatically, as well as changing the target & title on hover! Act fast, this deal won't last! I kid, but enough of the ShamWowery. In reality, this is a very simple script that reads how far you have scrolled a window, & applies or removes a class to your scroll button, as well as changing the target of said scroll button & adjusting the title to reflect which way it will take you!
It's so simple, crediting me seems superfluous but if you want, feel free to credit with a link to my blog <3 I hope the new verse of our song is eminently kind to everyone!
See it In Action(Click, or look Below):
I currently use this code on two different WIPS, so feel free to check out some gifs;
To Begin
Before the end of your </body> tag in your wrappers(for Jcink) or wherever the HTML templates go on other sites, you want to place this script:
<script> $(window).scroll(function() { if ($(this).scrollTop() > 800) { $('#scroll').attr("title","To Top?").attr("href","#Top").addClass('totop'); } else { $('#scroll').attr("title", "To Bottom?").attr("href","#Bottom").removeClass('totop'); } });</script>
This seeks out an id of Scroll to adjust the href & title as needed depending on the scroll position within the relevant window. The scroll amount is in px, so to change how quickly it changes the button, alter the number 800 to whatever you desire, fiddle with it; one size never fits all.
The Styling
Once you've saved that, move to your CSS, or wherever your Style tag is to add styling for the link itself. Keep in mind the link should be contained within a container that handles its positioning for it as otherwise the script will fuck with the positioning as well as the transformation & you really just want it to spin upwards.
The styling for the link should be as follows;
#scroll { display: inline-block; positioning: relative; transform: rotate(0deg); transition: transform .5s ease-in-out; /*** ^ change the .5s to alter duration or the ease-in-out to alter the timing of the transition between button states ***/ }
#scroll.totop { transform: rotate(180deg); }
The first statement defines the default state (linking to the bottom) of the scroll button on the load of the page, the second defines the change of position once the window has been scrolled far enough to activate one's script.
The HTML
Now you've got the behaviour defined via JS & the styling defined via CSS, it's time to input the HTML, or the bone structure of the code itself. In your wrappers, template, or wherever HTML goes on your host, locate three places;
One, where you want the TOP scroll location to be. This is where the scroll button will take you once it has changed states on scrolling a certain distance. Here, you place an anchor span as follows;
<span id="Top"></span>
Two, Where you desire for the BOTTOM or BODY scroll location to be, as in where the scroll button will take you on click initially. This could also be a scroll to the start of content, in which case I recommend changing #Bottom & id="Bottom" respectively to reflect the syntax, it's entirely up to you. Here, you place an anchor span as follows;
<span id="Bottom"></span>
Finally, It's time to add the scroll button. Keep in mind, where you put it is a function of utility & design choice. Some like it persistently hovering in a fixed position, some like it in a sidebar or on userlinks, some prefer it in the navigation bar.
Wherever you place it, try to ensure that it's easily accessible on any device, screen size, & matches the User Interface logic you've used everywhere else. If you have all text buttons, don't use just an icon, if you have all icons, don't suddenly use just text. Match your action calls, so users don't feel confused while using your site.
Once you've decided where you want it, place the following code, NOTING that there should be a container for this code that positions it for you. I've provided two options; the Icon Font option (courtesy of Phosphoricons -- a free & reliable Icon Font I recommend -- As well as one which includes text, so both UI/UX design philosophies are accommodated.
Note the option with text will only rotate the caret from downwards to upwards, so the scroll text shouldn't need editing unless you want to add or supplement flavourtext.
Please choose the appropriate option for yourself;
Icon Font
<a id="scroll" class="ph-fill ph-caret-down"></a>
Icon Font with Text
<span>Scroll <a id="scroll" class="ph-fill ph-caret-down"></a>?</span>
Some Notes:
I just want to add a bit of info:
If your browser isn't scrolling smoothly to your anchors? Check your settings, & be sure the root of your CSS has scroll-behaviour: smooth; in it.
If you use this guide & have problems getting it to work, please let me know! I will troubleshoot this for you & tumblr has strange coding, I may have futzed something up, I want this to be as accessible as possible, so don't be silent; questions help!
If you are not using Jcink, or another host with a Jquery library pre-loaded, be aware that one is needed for this script to work. Most hosts will have a default Jquery library, but if yours doesn't or you're self hosting, any should do. The Jcink file is below, however, if you want to just use that.
10 notes
·
View notes
Note
WAIT oh my god you figured out toggles in twine??? please explain??? I've got a text effect I've been dying to add in my IF but I'm worried it'll be visually too much for some players/a pain for fast readers so I've been trying to figure out how to give folks a toggle option but I don't know how and I haven't been able to find anything helpful... any advice at all you have would be helpful and deeply appreciated!!
Oh Jesus -- I wouldn't say it's a good solution, but it works. Sometimes. Essentially I create a custom class (in my case ".snaggletooth") and in settings I create a toggle for people to either append the class to its dialogue ("true") or leave it as normal text ("false").
The code looks something like this:
var settingSnaggletoothDialogue = function () { if (settings.snaggletooth) { // is true $("html").addClass("snaggletooth"); } else { // is false $("html").removeClass("snaggletooth"); } }; Setting.addToggle("snaggletooth", { label : "Allow animated text for certain characters' dialogues?", default : false, onInit : settingSnaggletoothDialogue, onChange : settingSnaggletoothDialogue } );
Then you add a few lines of CSS code that tells the robot what paragraphs with the .snaggletooth class should look like. Theoretically this should work. I have yet to animate the text because I'm scared.
Also, to note: I'm using SugarCube v2. I'm sure this is different for Chapbook or Harlowe.
#answered#pacing in front of my laptop w my mouse hovering over the playtest button. what if my computer explodes#no idea if this works with what im trying to do. do not take my advice#i know how toggles work ive used them before but this introduces my old enemy animation into the mix#that is greenwarden's volatile code
18 notes
·
View notes
Note
Necro que tal! una pregunta, sabes como puedo colocar un numero al lado del icono de mensajes, sea 1 o 2 o 10 etc la cantidad que a cuando llega un mp a un usuario?
¡Hola anon! Es posible, sí.
IMPORTANTE: Si estás usando una navbar manual (es decir, tú has escrito los links de la navbar en el HTML y no has usado la variable {GENERATED_NAV_BAR} del overall_header), tendrás que incluir la navbar generada en tu template para poder usar este código. Puedes meterla en un div con display:none.
Ahora vas a poner esto en tu JS; si estás usando algún JS para limpiar los links generados por el {GENERATED_NAV_BAR}, tendrás que poner este code ANTES de ese código.
$('.new-message, .toread-message').each(function(){ var mps = parseInt($(this).text().match(/\d+/)); $(this).parents('body#phpbb').addClass('newmps').prepend("<style>:root, :root *, :root *::before, :root *::after { --mps:'"+mps+"'; }</style>"); });
Si no estás usando ningún código JS, usa este código en su lugar (en Todas las páginas):
$(function(){ $('.new-message, .toread-message').each(function(){ var mps = parseInt($(this).text().match(/\d+/)); $(this).parents('body#phpbb').addClass('newmps').prepend("<style>:root, :root *, :root *::before, :root *::after { --mps:'"+mps+"'; }</style>"); }); });
Este código te da dos cosas que te ayudarán a editar los mensajes nuevos: una clase (.newmps) en el body para cambiar color de icono de mps, y una variable (--mps) que incluirá el número de mps sin leer. Por ejemplo, podrías usarlo así:
a.mainmenu[href*="/privmsg"] { color: gray; } /*Botón por defecto*/ .newmps a.mainmenu[href*="/privmsg"] { color: white;position:relative; } /*Botón de nuevo mp*/ .newmps a.mainmenu[href*="/privmsg"]::before { content:var(--mps); background: blue; width:1rem; height:1rem; position:absolute; top:-0.5rem; right:-0.5rem; border-radius:100%; text-align:center; font-size:0.75rem; line-height:1rem; } /*Circulito de nuevo mp con el número de mps por leer*/
¡Saludos!
4 notes
·
View notes
Note
Hi Anyh. I'm using your invert button, and was wondering if you could help me. My sidebars are fixed in the theme I'm using, but when "dark mode" is enabled, the sidebars start scrolling with the theme, instead of staying fixed. Could you possibly help me figure out how to keep them fixed while the theme is inverted? Thank you in advance!
Hi! That happens when we add the "invert colors" effect straight to the body of the theme, which is what that button does in order to easily invert the whole theme at once.
The way to fix it is to instead of applying the effect straight to the body, we will apply it separately to each element of the theme. So I took a look at the code of the theme you are using and made you a custom code. Just note that different themes have different elements, so this code I'm giving you only works for the theme you are using right now.
Replace the script of my invert button on your theme with this one:
<!-- INVERT COLORS (by http://anyhs-themes.tumblr.com) --> <script> $(window).ready(function(){ $("#at_inverter_cores").click(function invertColors(){ $(this).find("i").toggleClass("fa-toggle-on"); $("body").toggleClass("body-inverter"); $(".yeeet, .veeet, .ubilu").toggleClass("inverter"); $("img, figure, iframe, .photoset, .pxu-photo").toggleClass("inverter"); $("figure").find("img").addClass("naoinverter"); $(".photoset").find("figure").addClass("naoinverter"); }); }); </script> <!-- INVERT COLORS (by http://anyhs-themes.tumblr.com) -->
And on the CSS part of my invert button code, find "body.inverter {background: #222222;}" and replace it with:
body.body-inverter {background: #222222;}
Let me know if doesn't work correctly. Have a nice day/night! :)
2 notes
·
View notes
Text
Hit a bit of a wall-
I'm trying to make it so that the reader is able to change the UI design via a drop down menu mixed with variable calling with additional HTML code but it just isn't working? I used the Link rerun method and even that didn't work, it worked with one of them but the other just refuses to switch. I'm using Harlowe 3.3.9, I'll post the code I'm using in under the read more to not clutter anything (and hopefully get some feedback/help on this, I suspect it has something to do with the text color Css)
Stylesheet code:
html.UIDefaultGlow tw-passage { position: static; border: 4px white; border-style: solid; border-radius: 15px; margin: auto; padding: 20px; box-shadow: 5px 10px 10px 10px white; background: linear-gradient(gray,#dcdbdd); opacity: 0.3 color: black; }
html.UIDefaultGlow tw-link { background-color: transparent; border: 2px solid white; border-radius: 15px; padding: 5px; color: white;}
html.UIDefaultGlow tw-link:hover {background-color: transparent; border: 2px solid white; border-radius: 15px; box-shadow: 5px 10px 15px 10px white, 10px 15px 20px 15px black;; padding: 5px; color: white; text-shadow: 10px 10px 20px black, 5px 5px 15px white;}
html.UIDefaultGlow tw-link.visited { background-color: transparent; border: 2px solid #dd9d9d; border-radius: 15px; padding: 5px; color: #dd9d9d;}
html.UIDefaultGlow tw-link.visited:hover {background-color: transparent; border: 2px solid #dd9d9d; border-radius: 15px; box-shadow: 5px 10px 15px 10px #dd9d9d; padding: 5px; color: #dd9d9d; text-shadow: 5px 5px 15px #dd9d9d;}
html.UIDefault tw-passage { position: static; border: 4px white; border-style: solid; border-radius: 15px; margin: auto; padding: 20px; box-shadow: 5px 10px 10px 10px black; background: linear-gradient(gray,#dcdbdd); opacity: 0.3 color: black; }
html.UIDefault tw-link { background-color: transparent; border: 2px solid white; border-radius: 15px; padding: 5px; color: white;}
html.UIDefault tw-link:hover {background-color: transparent; border: 2px solid white; border-radius: 15px; box-shadow: 5px 5px 10px 15px black; padding: 5px; color: white; text-shadow: 5px 5px 10px black;}
html.UIDefault tw-link.visited { background-color: transparent; border: 2px solid #dd9d9d; border-radius: 15px; padding: 5px; color: #dd9d9d;}
html.UIDefault tw-link.visited:hover {background-color: transparent; border: 2px solid #dd9d9d; border-radius: 15px; box-shadow: 5px 10px 15px 10px black; padding: 5px; color: #dd9d9d; text-shadow: 5px 5px 15px #dd9d9d;}
Passage/UI selection code:
{(set: $UI to "Default Glow")}
{[(set: $UI to "Default Glow") (set: $UI to "Default")]} (dropdown: 2bind $UI,"Default Glow","Default") {(if: $UI is "Default Glow") <script>$('html').removeClass("red yellow blue").addClass('UIDefaultGlow');</script>] (if: $UI is "Default")[<script>$('html').removeClass("UIDefaultGlow").addClass('UIDefault');</script>]}
0 notes
Photo

A total of eight people were wounded when a pro-Palestinian attacker threw incendiary devices into a crowd gathered in solidarity with Israeli hostages in Colorado on Sunday. Mohamed Sabry Soliman, 45, has been charged with first degree murder among other offenses, county jail records show, over the antisemitic attack on a Boulder vigil for hostages held in Gaza. Soliman shouted "Free Palestine" during the attack, which the FBI is investigating as an act of terror. Police have not yet confirmed whether anyone died in the attack. Soliman is also facing felony charges for using explosives or incendiary devices, first degree assault, and causing serious injury to the elderly. He is being held in Boulder County Jail on a $10 million bond. Sunday's victims were aged between 52 and 88, and attending a Run for Their Lives rally, which was raising awareness of the hostages' ongoing plight. The eldest victim was a Holocaust refugee who fled Europe, Rabbi Israel Wilhelm, the Chabad director at the University of Colorado Boulder, told CBS Colorado. Six of the victims were taken to local hospitals for treatment, the Boulder Office of Disaster Management said. Their ages range from 67 to 88. Police offers at the scene of the attack in Boulder, Colorado, on Sunday. Police offers at the scene of the attack in Boulder, Colorado, on Sunday. AP This is a breaking story. More to follow. Newsweek is committed to challenging conventional wisdom and finding connections in the search for common ground. ';uncommonKnowledgeItems[0].insertAdjacentHTML('afterend',uncommonKnowledgeContainerHtml);let uncommonKnowledgeContainerElement=document.getElementsByClassName('uncommon-knowledge');let itemsContainerElement=document.getElementById('uncommon-knowledge-items-container');uncommonKnowledgeContainerElement[0].style.display='block';uncommonKnowledgeItems.forEach((itemUncommon)=>{document.getElementById('uncommon-knowledge-items-container').insertAdjacentHTML('beforeend',' '+itemUncommon.innerHTML+' ');itemUncommon.remove()});jQuery('.start-slider').owlCarousel({loop:!1,margin:10,nav:!0,items:1}).on('changed.owl.carousel',function(event){var currentItem=event.item.index;var totalItems=event.item.count;if(currentItem===0){jQuery('.owl-prev').addClass('disabled')}else{jQuery('.owl-prev').removeClass('disabled')} if(currentItem===totalItems-1){jQuery('.owl-next').addClass('disabled')}else{jQuery('.owl-next').removeClass('disabled')}})}})})
0 notes
Text
FPT Industrial fornece motores a gás para chassis Agrale
News https://portal.esgagenda.com/fpt-industrial-fornece-motores-a-gas-para-chassis-agrale/
FPT Industrial fornece motores a gás para chassis Agrale

Fabio Melotto/FPT Industrial
Marca celebra nova parceria ao equipar o chassi MA 11.0 GNV; motor N60 CNG entrega 200 cv de potência e 750 Nm de torque
A FPT Industrial estabeleceu recentemente uma nova importante parceria com a Agrale. A fabricante pertencente ao Iveco Group, agora é responsável pelo fornecimento do motor N60 CNG, movido a gás natural e biometano, para o chassi MA 11.0 GNV. A parceria demonstra a sustentabilidade e a eficiência energética para aplicações de transporte de passageiros.
Contando com 200 cv de potência e 750 Nm de torque, o propulsor se destaca pela performance e excelente rendimento no dia a dia das operaç��es. Já a tecnologia de combustão estequiométrica garante o melhor consumo de combustível da classe. Destaca-se ainda uma redução de custos de 40% a 50% na comparação com o diesel e um funcionamento mais silencioso, emitindo até -3dBA de ruído em operação, o que torna o ônibus ideal para serviços noturnos nas cidades.
Do ponto de vista ambiental, o motor N60 CNG emite até 90% menos dióxido de nitrogênio (NO2) e até 10% menos dióxido de carbono (CO2) quando abastecido com gás natural. Utilizando biometano, as emissões de CO2 podem ser reduzidas em até 95%, contribuindo para a descarbonização do transporte de passageiros.
“Nossos motores são projetados para operar com gás natural (GNV e GNL) ou biometano. Na América Latina, acreditamos que a solução começa por tecnologias adequadas ao potencial em biocombustíveis da região. Por isso a FPT Industrial lidera diferentes projetos como parte desta estratégia multienergética, investindo no uso do gás natural e biometano”, afirma Carlos Tavares, presidente da FPT Industrial para América Latina.
Outro grande diferencial do propulsor é o conceito “Diesel Like” da FPT Industrial garante desempenho equivalente, em termos de potência e torque, aos motores diesel.
“Esta tecnologia avançada não só responde às crescentes demandas por soluções sustentáveis, mas também estabelece um novo padrão de eficiência operacional e respeito ao meio ambiente no setor de transportes”, afirma João Abreu, especialista de Marketing Produto da FPT Industrial.
N60 CNG – Especificações técnicas
Potência [hp/kW]: 200/150 @ 2700 rpm
Torque [Nm]: 750 @ 1.400 rpm
Deslocamento [l]: 5.9
Número de Cilindros/Válvulas: 6 / 2
Turbocompressor: WG
Sistema de Injeção: MPI (Multi Point Injection)

FPT Industrial/Divulgação
Família NEF
Ideal para ônibus de 6 a 18 toneladas, a Família NEF de motores, do qual o N60 CNG faz parte, se destaca pela eficiência e versatilidade. As motorizações não só atendem as exigências de desempenho das aplicações urbanas, mas também são reconhecidas por sua confiabilidade e baixo custo operacional, maximizando assim a rentabilidade para frotistas e operadores.
Já a confiabilidade da gama de propulsores é atestada por mais de 2 milhões de motores produzidos, utilizados em mais de 1.800 aplicações diferentes. Além do segmento On-Road, de transporte, esses motores são empregados nos segmentos Off-Road, de agricultura e construção, Marítimo e de Geração de Energia.
//<![CDATA[ "use strict";!function(e)e.fn.pbtLazy=function(t)return t=e.extend(onScroll:!0,t),this.each(function())(jQuery);const $w=$(window),$d=$(document),$h=$("html"),$b=$("body");function getAttr(e,t)let a=e.split("$"),s=/([^\]+(?=))/g,n=a.length;for(let o=0;o<n;o++)let l=a[o].split("=");if(l[0].trim()==t)let i=l[1];if(i&&null!=i.match(s))return String(i.match(s)).trim();breakreturn!1}function darkModeLogo(e)$("[data-dark-src]").each(function()let t=$(this),a=t.data("dark-src"),s=t.data("src");"true"==e?t.attr("src",a):t.attr("src",s))function openSearch()localStorage.search_term="",$(".overlay-bg").addClass("ms17"),$b.removeClass("share-on").addClass("search-on"),setTimeout(function()$(".main-search input").focus(),170)function cleanSearch()setTimeout(function()$(".main-search input").blur().val(""),$(".search-results").html("").removeClass("scroll").parent().removeClass("visible"),$(".overlay-bg").removeClass("ms17"),170)function closeSearch()$(".search-on .overlay-bg").on("click",function()$b.removeClass("search-on"),cleanSearch()),$w.on("keydown",function(e)27==e.keyCode&&($b.removeClass("search-on"),cleanSearch()))function pAd(e,t)$(e).find("noscript").each(function()let e=$(this),a=e.text();$(t).html(` <div class="widget">$a `))function closeShare()$b.removeClass("share-on"),setTimeout(function()$(".overlay-bg").removeClass("ms17"),170)function openShare()cleanSearch(),$(".overlay-bg").addClass("ms17"),$b.removeClass("search-on").addClass("share-on"),$(".hide-modal, .share-on .overlay-bg").on("click",function()closeShare()),$w.on("keydown",function(e)27==e.keyCode&&closeShare())function navShortcuts(e)$(e).each(function()let e=$(this).attr("href");e&&window.open(e,"_self"))function msgError(e)return`<span class="error-msg">$("search"!=e?"<b>Error: ":"")+pbt.noResults`function beforeLoader()return' <div class="loader"><svg class="spinner" viewBox="0 0 50 50"><circle class="path" cx="25" cy="25" r="20"> 'function getFeedUrl(e,t)let a;return a="recent"===t?`/search/?by-date=true&max-results=$e&view=json`:`/search/label/$t?by-date=true&max-results=$e&view=json`function getPostID(e)return e.idfunction getPostLink(e)return e.linkfunction getPostTitle(e)return e.titlefunction getPostAuthor(e)""!=pbt.postAuthorLabel&&pbt.postAuthorLabel;let t=pbt.postAuthor?`<span class="entry-author"><span class="author-name">$e.author`:"";return tfunction getPostDate(e)let t=e.published.date,a=e.published.datetime,s=pbt.postAuthor&&""!=pbt.postDateLabel?`<span class="sp">$pbt.postDateLabel`:"",n=!0==pbt.postDate?`<span class="entry-time">$s<time class="published" datetime="https://www.caminhoes-e-carretas.com/2025/04/$a">$t`:"",o=!0==pbt.postDate?`<span class="entry-time"><time class="published" datetime="https://www.caminhoes-e-carretas.com/2025/04/$a">$t`:"";return[n,o]function getPostMeta(e,t)let a=!0==pbt.postAuthorfunction getPostImage(e)return e.thumbnail.srcfunction getPostImageType(e,t)let a=function(a)let s=` yt-img$a?":x"+a:""`;return"youtube"==e.thumbnail.source?s:"video"==t?s:"",s=["",a(),a(2),a(3),a(4)];return sfunction getPostTag(e)let t=e.category&&pbt.postCategory?`<span class="entry-tag">$e.category`:"";return tfunction getPostSummary(e,t)let a=e.summary&&pbt.postSummary?`<span class="entry-excerpt excerpt">$e.summary.substr(0,t)…`:"";return afunction getPostContent(e)let t=e.type,a=e.post,s=e.index,n=e.num,o=e.headline,l=e.target,i="",r=getPostDate(a),c=getPostAuthor(a),d=getPostTag(a),h=getPostTitle(a),u=getPostLink(a),f=getPostImage(a),p=getPostImageType(a,t),g=getPostMeta(c,r);switch(t)case"mega":i=` <div class="post item-$s"><a class="entry-thumbnail$p[2]" href="https://www.caminhoes-e-carretas.com/2025/04/$u" title="$h"><span class="thumbnail" data-src="https://www.caminhoes-e-carretas.com/2025/04/$f"> <div class="entry-header"> <h2 class="entry-title"><a href="https://www.caminhoes-e-carretas.com/2025/04/$u">$h $g[1] `;break;case"search":i=s!=n?` <div class="post item-$s"><a class="entry-thumbnail$p[3]" href="https://www.caminhoes-e-carretas.com/2025/04/$u" title="$h"><span class="thumbnail" data-src="https://www.caminhoes-e-carretas.com/2025/04/$f"> <div class="entry-header"> <h2 class="entry-title"><a href="https://www.caminhoes-e-carretas.com/2025/04/$u">$h $g[1] `:"";break;case"featured":i=` <div class="post cs item-$s"><a class="entry-inner" href="https://www.caminhoes-e-carretas.com/2025/04/$u" title="$h"><span class="entry-thumbnail$p[1]"><span class="thumbnail" data-src="https://www.caminhoes-e-carretas.com/2025/04/$f">$d <div class="entry-header"> <h2 class="entry-title">$h $g[0] `;break;case"trending":i=0===s?` <div class="post item-$s"><a class="entry-thumbnail$p[1]" href="https://www.caminhoes-e-carretas.com/2025/04/$u" title="$h"><span class="thumbnail" data-src="https://www.caminhoes-e-carretas.com/2025/04/$f"> <div class="entry-header">$d <h2 class="entry-title"><a href="https://www.caminhoes-e-carretas.com/2025/04/$u">$h $getPostSummary(a,96)+g[0] `:(1==s?` <div class="$t-list">`:"")+` <div class="post item-$s"><a class="entry-thumbnail$p[4]" href="https://www.caminhoes-e-carretas.com/2025/04/$u" title="$h"><span class="thumbnail" data-src="https://www.caminhoes-e-carretas.com/2025/04/$f"> <div class="entry-header"> <h2 class="entry-title"><a href="https://www.caminhoes-e-carretas.com/2025/04/$u">$h $g[1] `;break;case"card":i=`<a class="entry-link" href="https://www.caminhoes-e-carretas.com/2025/04/$u" target="https://www.caminhoes-e-carretas.com/2025/04/$l" title="$h"><span class="entry-thumbnail$p[2]"><span class="thumbnail" data-src="https://www.caminhoes-e-carretas.com/2025/04/$f"> <div class="entry-header">$o <h2 class="entry-title">$h $g[0] `;break;case"related":i=s!=n-1?` <div class="post item-$s"><a class="entry-thumbnail$p[2]" href="https://www.caminhoes-e-carretas.com/2025/04/$u" title="$h"><span class="thumbnail" data-src="https://www.caminhoes-e-carretas.com/2025/04/$f"> <div class="entry-header"> <h2 class="entry-title"><a href="https://www.caminhoes-e-carretas.com/2025/04/$u">$h $g[1] `:"";break;case"side":i=` <div class="post item-$s"><a class="entry-thumbnail$p[3]" href="https://www.caminhoes-e-carretas.com/2025/04/$u" title="$h"><span class="thumbnail" data-src="https://www.caminhoes-e-carretas.com/2025/04/$f"> <div class="entry-header"> <h2 class="entry-title"><a href="https://www.caminhoes-e-carretas.com/2025/04/$u">$h $g[1] `return ifunction getRecentPostsData(e)let t=$.ajax(url:getFeedUrl(e,"recent"),type:"GET",async:!1,dataType:"html",cache:!0,success:function(e)return e).responseText,a=JSON.parse($(t).find("#data").text()),s=a.posts;return sfunction getPosts(e)let t=e.t,a=e.type,s=e.num,n=e.label?e.label:"recent",o=e.id,l=e.link,i=e.headline,r=e.target;$.ajax(url:"card"!=a&&"search"!=a?getFeedUrl(s,n):l,type:"GET",async:!0,dataType:"html",cache:!0,beforeSend:function(e)switch(a)case"mega":t.append(` <div class="ul on-load">$beforeLoader() `).addClass("loaded");break;case"search":t.html(beforeLoader()).removeClass("scroll").parent().addClass("visible").find(".view-all").remove();break;case"card":case"related":t.html(beforeLoader());break;default:t.html(beforeLoader()).parent().addClass("type-"+a),success:function(e)let l="",c=0,d=!1;switch(a)case"mega":l=" <div class="ul mega-items">";break;case"search":case"featured":case"trending":case"side":case"related":l=` <div class="$a-items">`;break;default:l="card"!=a?` <div class="content-block $a-items">`:""let h=$(e).find("#data");if(h.length)let u=JSON.parse(h.text()),f="card"!=a?u.posts:u.postData;if(f)if("related"==a)1==f.length&&"recent"!=n&&(f=getRecentPostsData(s));let p=f.length;for(let g=0;g<p;g++)let m=f[g];if(1!=f.length&&getPostID(m)==o)f.splice(g,1);breaklet b=f.length;for(let v=0;v<b;v++)let y=f[v];l+=getPostContent(type:a,post:y,index:v,num:s,headline:i,target:r)c=belse d=!0else d=!0;switch("mega"===a?(l+=" ",l=d?` <div class="ul no-items">$msgError() `:l,t.addClass(a).find(".ul").replaceWith(l)):(l+="card"!=a?" ":"",l=d?msgError(a):l,t.html(l),"search"==a&&(s<c&&t.parent().append(`<a class="view-all btn" href="https://www.caminhoes-e-carretas.com/search?q=$n&by-date=true">$pbt.viewAll`),setTimeout(function()t.addClass("scroll"),500))),a)case"mega":case"search":t.find("span.thumbnail").pbtLazy(onScroll:!1);break;default:t.find("span.thumbnail").pbtLazy(),error:function()"mega"===a?t.find(".ul").replaceWith(` <div class="ul no-items">$msgError() `):t.html(msgError(a)))function getSearch(e,t)let a=e.val(),s=a.trim();""!=s&&s!=localStorage.search_term&&(localStorage.search_term=s,getPosts(t:t,type:"search",num:4,label:s,link:`/search/?q=$s&by-date=true&max-results=5&view=json`))function getPostCard()$(".post-card").each(function()let e=$(this),t=e.data("url"),a=e.data("title"),s=e.data("target"),n=a?`<span class="entry-headline">$a`:"";t?(e.removeAttr("data-url").removeAttr("data-title").removeAttr("data-target"),$w.on("load resize scroll",function a()$w.scrollTop()+$w.height()>=e.offset().top&&($w.off("load resize scroll",a),getPosts(t:e,type:"card",link:t,headline:n,target:s))).trigger("scroll")):e.html(msgError()))function getStickySidebar(e)$(e).each(function()if(pbt.stickySidebar)let e=pbt.stickyMenu?$(".header-inner").height()+32:32;$(this).pbtStickySidebar(containerSelector:".content-wrap > .container",additionalMarginTop:e,additionalMarginBottom:32))function disqusComments(e)let t=document.getElementsByTagName("head")[0],a=document.createElement("script");a.type="text/javascript",a.async=!0,a.src=`https://$e.disqus.com/blogger_item.js`,t.appendChild(a)function beautiAvatar(e)$(e).attr("src",function(e,t)let a="//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCxxt0n6b048h4UEHf-L5T22U8xCk-IsG2qbfVUMBMKdt2t3ijO6qz--5UBg63qH4V_6z8uIBe7z6VNnueFbF3XKIWkCJPmFQqfm3Rmx3tpBOk74LGDZrUEgGnJF2-VDrzlkZSVyJs2sYjtiCytrEjsw23o88dqy5mdjw0KPwNuySVA7iYfdHWYpgsuQ/s35/avatar.webp";return t=t.replace("//resources.blogblog.com/img/blank.gif",a).replace("//lh3.googleusercontent.com/zFdxGE77vvD2w5xHy6jkVuElKv-U9_9qLkRYK8OnbDeJPtjSZ82UPq5w6hJ-SA=s35",a).replace("/s35","/s44-rw").replace("=s35","=s44-rw"))$("#main-menu").pbtMenu(),$h.each(function()let e=$(this),t=localStorage.dark_mode;!0!=pbt.isDark&&!1!=pbt.userDarkMode&&("true"==t&&(e.addClass("is-dark"),darkModeLogo(t)),$(".darkmode-toggle").on("click",function()let a=$(this);a.hasClass("dark-on")?a.removeClass("dark-on").addClass("dark-off"):a.removeClass("dark-off").addClass("dark-on"),e.toggleClass("is-dark"),t="true"!=t?"true":"false",localStorage.dark_mode=t,darkModeLogo(t)))),$(".dark-logo").each(function()!0==pbt.isDark&&darkModeLogo("true")),$(".search-toggle").on("click",function(e)openSearch(),closeSearch()),$w.on("keydown",function(e)e.ctrlKey&&75==e.keyCode&&(e.preventDefault(),openSearch(),closeSearch())),$(".social-icons a").each(function()let e=$(this),t=e.attr("href"),a=t.split("#"),s=e.data("text");if(a[1]&&!0==s)let n=a[1].trim();""!=n&&e.append(`<span class="text">$n`)e.attr("href",a[0].trim())),$(".MailChimp .widget-content").each(function()let e=$(this),t=e.data("shortcode");if(t)let a=getAttr(t,"title"),s=getAttr(t,"text");!1!=a&&e.find(".mailchimp-title").html(a),!1!=s&&e.find(".mailchimp-text").html(s)),$(".post-body a").each(function()let e=$(this),t=e.text(),a=getAttr(t,"text");if(t.match("getButton")&&a&&(e.replaceText(/([^\]+(?=))/g,"<em>$1"),e.find("em").replaceText("$","%s"),e.each(function()let e=$(this),t=e.text(),a=getAttr(t,"text"),s=getAttr(t,"icon"),n=getAttr(t,"color"),o=getAttr(t,"size"),l=getAttr(t,"info"),i=getAttr(t,"id"),r=e.parent().attr("style");e.addClass(o?"button btn x2":"button btn").text(a.replace("%s","$")),i&&e.attr("href",e.attr("href")+"#gd="+btoa(i)),!1!=s&&e.addClass(s),n&&e.addClass("color").attr("style",`background:$n;`),r&&r.match("center")&&e.addClass("is-c"),l&&(e.addClass(s?"x2 "+s:"x2"),e.append(`<span class="btn-info">$l.replace("%s","$")`)))),t.match("getCard"))let s=getAttr(t,"type"),n=getAttr(t,"title"),o=e.attr("href"),l=e.attr("target");switch(s)case"download":case"product":case"custom":e.replaceText(/([^\]+(?=))/g,"<em>$1"),e.find("em").replaceText("$","%s"),e.each(function()let e=$(this),t=e.text(),a=getAttr(t,"button"),n=getAttr(t,"icon"),i=getAttr(t,"title"),r=getAttr(t,"info"),c=getAttr(t,"id");r=r?`<span class="card-meta">$r.replace("%s","$")`:"",e.replaceWith(` <div class="cta-card $s"> <div class="card-header"> <div class="card-icon"><i class="bi" data-icon="$"> <div class="card-info"><span class="card-title">$pbt.noTitle$r <a class="card-btn btn" href="https://www.caminhoes-e-carretas.com/2025/04/$o?"download"==s&&c?o+"#gd="+btoa(c):o:"#"" target="$l">$ `));break;default:e.replaceWith(` <div class="post-card" data-url="$o" data-title="$n" data-target="$l"/>`)}}),$(".post-body blockquote").each(function()let e=$(this),t=[shc:"alertSuccess",cls:"success",shc:"alertInfo",cls:"info",shc:"alertWarning",cls:"warning",shc:"alertError",cls:"error",shc:"codeBox",cls:"code"],a=e.text(),s=e.html();function n(t,n)a.trim().match(t)&&(s=s.replace(t,""),e.replaceWith("code"!=n?` <div class="alert-message alert-$n">$s `:` <pre class="code-box">$s `))for(let o in t)n(t[o].shc,t[o].cls)),$(".post-body b").each(function()let e=$(this),t=e.text();function a(e)return t.trim().match(e)if((a("inAds")),$(".before-ads").each(function()$("#post-ads-1").length&&pAd("#post-ads-1",$(this))),$(".after-ads").each(function()$("#post-ads-2").length&&pAd("#post-ads-2",$(this))),$(".article-ads").each(function()$("#post-ads-3").length&&pAd("#post-ads-3",$(this))),$(".post-footer-ads").each(function()$("#post-ads-4").length&&pAd("#post-ads-4",$(this))),$(".item-post").each(function()let e=$(this),t=e.find(".post-body"),a=e.find(".pagination"),s=t.html().split(/<!\-\-\s*nextpage\s*\-\->/i),n=s.length,o=0;if(n>1)function l()let e=window.location.href,l=e.match(/\?/g)?"&":"?",i=new URL(e.replace("#",l)),r=new URLSearchParams(i.search),c=r.get("page");o=(o=Number(0==c$w.on("hashchange",l),l()),$(".window-open").on("click",function(e)e.preventDefault();let t=$(this),a=t.attr("href"),s=window.open(a,"_blank","scrollbars=yes,resizable=yes,toolbar=0,width=860,height=540,top=50,left=50");s.focus()),$w.on("keydown",function(e)pbt.isPost&&e.ctrlKey&&83==e.keyCode&&(e.preventDefault(),openShare())),$(".post-share .show-more button, .share-toggle").on("click",function()openShare()),$(".copy-link").each(function()let e=$(this),t=e.children("input");t.on("click",function()this.select()),e.children("button").on("click",function()navigator.clipboard.writeText(t.val()),e.removeClass("copied-off").addClass("copied"),setTimeout(function()e.removeClass("copied").addClass("copied-off"),3e3))),$(".about-author .author-text").each(function()let e=$(this),t=e.find("a");t.length&&(t.each(function()let e=$(this),t=e.text().trim(),a=e.attr("href"),s="external-link"==t?"website":t;e.replaceWith(` <li class="$s"><a class="bi-$s" href="https://www.caminhoes-e-carretas.com/2025/04/$a" title="$s" rel="nofollow noopener" target="_blank"> `)),e.parent().append(' <ul class="author-links social color"> '),e.find("li").appendTo(e.parent().find(".author-links")))),$w.on("keydown",function(e)pbt.isPost&&(e.ctrlKey&&37==e.keyCode?(e.preventDefault(),navShortcuts(pbt.isRTL?".post-nav-older-link":".post-nav-newer-link")):e.ctrlKey&&39==e.keyCode&&(e.preventDefault(),navShortcuts(pbt.isRTL?".post-nav-newer-link":".post-nav-older-link")))),$(".main-nav li.mega-menu").each(function()let e=$(this),t=e.find("a"),a=t.data("shortcode");if(a)"recent";if(n)let o="recent"==n?"/search":`/search/label/$n`;e.mouseenter(function()e.hasClass("loaded")).children("a").attr("href",o)else e.append(` <div class="ul no-items">$msgError() `).addClass("loaded")),$(".main-search").each(function()let e=$(this),t=e.find("input"),a=e.find("button"),s=e.find(".search-results");a.on("click",function()getSearch(t,s)),$w.on("keydown",function(e)13==e.keyCode&&getSearch(t,s))),$("#featured .HTML .widget-content").each(function()let e=$(this),t=e.data("shortcode");if(t)let a=getAttr(t,"label");e.removeAttr("data-shortcode"),$w.on("load resize scroll",function t()$w.scrollTop()+$w.height()>=e.offset().top&&($w.off("load resize scroll",t),getPosts(t:e,type:"featured",num:3,label:a))).trigger("scroll")),$("#trending .HTML .widget-content").each(function()let e=$(this),t=e.data("shortcode");if(t)let a=getAttr(t,"results"),s=a),$(".getPosts .widget-content").each(function()let e=$(this),t=e.data("shortcode");if(t)4,n=getAttr(t,"label");e.removeAttr("data-shortcode"),$w.on("load resize scroll",function t()$w.scrollTop()+$w.height()>=e.offset().top&&($w.off("load resize scroll",t),getPosts(t:e,type:"side",num:s,label:n))).trigger("scroll")),getPostCard(),$("#related-posts .HTML").each(function()let e=$(this),t=e.data("shortcode");t&&$(".related-wrap").each(function()let a=$(this),s=a.find(".related-tag"),n=s.data("id"),o=s.data("label"),l=a.find(".widget-content"),i=function e()let a=getAttr(t,"results"),s=a?Number(a)+1:4,n=getAttr(t,"label");return[s,n](),r=i[0],c=i[1],d=c&&c!=o&&"related"!=c?c:o;c&&c!=o&&"related"!=c&&l.parent().find(".title-link").attr("href","/search/label/"+d),$w.on("load resize scroll",function t()$w.scrollTop()+$w.height()>=l.offset().top&&($w.off("load resize scroll",t),getPosts(t:l,type:"related",num:r,label:d,id:n),e.parent().remove())).trigger("scroll"))),$(".blog-post-comments").each(function()let e=$(this),t=e.data("shortcode"),a=getAttr(t,"type"),s=`$a-comments`;switch(a)case"disqus":let n=getAttr(t,"shortname");!1!=n&&(disqus_shortname=n),disqusComments(disqus_shortname),e.addClass(s+" visible");break;case"facebook":let o=getAttr(t,"lang"),l=!1!=o?`https://connect.facebook.net/$o/all.js#xfbml=1&version=v14.0`:"https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v14.0";$("head").append(`<script async="async" defer="defer" crossorigin="anonymous" src="https://www.caminhoes-e-carretas.com/2025/04/$l" />`),e.addClass(s).find("#comments").html(` <div class="fb-comments" data-width="100%" data-href="https://www.caminhoes-e-carretas.com/2025/04/$disqus_blogger_current_url" order_by="time" data-numposts="5" data-lazy="true"> `),e.addClass("visible");break;default:e.addClass("blogger-comments visible"),e.find("#top-continue .comment-reply").addClass("btn"),beautiAvatar(".avatar-image-container img")let i=e.find(".comments .comment-reply"),r=e.find(".comments #top-continue"),c=e.find(".show-cf");i.on("click",function(t)t.preventDefault(),e.addClass("cf-on"),r.show(),c.remove()),r.on("click",function(e)e.preventDefault(),r.hide()),c.on("click",function()e.addClass("cf-on"),c.remove(),getStickySidebar(".main-wrap, .sidebar-wrap"))),$(function()$(".entry-thumbnail .thumbnail, .entry-avatar .avatar").not(".pbt-lazy").pbtLazy(),$(".header-inner").each(function()let e=$(this);if(!0==pbt.stickyMenu&&e.length>0)let t=$(document).scrollTop(),a=e.offset().top,s=e.height(),n=a+2*s;$w.scroll(function()let a=$(document).scrollTop(),s=e.offset().top,o=$(".main-header").offset().top+1;a>n?e.addClass("is-fixed"):s<=o&&e.removeClass("is-fixed").removeClass("show"),a<t?setTimeout(function()s>=o&&e.addClass("show"),170):setTimeout(function()e.removeClass("show"),170),t=a)),$(".mobile-logo").each(function()let e=$(this),t=$(".main-logo a").clone();t.find("h1").remove(),t.appendTo(e)),$(".mobile-menu").each(function()let e=$(this),t=$(".main-nav").clone();t.attr("class","mobile-nav").removeAttr("id"),t.find(".mega-menu > .ul").remove(),t.find(".mega-menu").removeAttr("class"),t.find(".mega-menu > a").each(function()let e=$(this),t=e.data("shortcode");if(t)let a=getAttr(t,"label");if(a)let s="recent"==a?"/search":`/search/label/$a`;e.attr("href",s)),t.appendTo(e),$(".mobile-menu-toggle, .hide-mobile-menu").on("click",function()$b.toggleClass("menu-on"),$(".menu-on .overlay-bg").on("click",function()$b.removeClass("menu-on"))),$(".mobile-menu .has-sub > a").on("click",function(e)e.preventDefault();let t=$(this);t.parent().hasClass("expanded")?t.parent().removeClass("expanded").children(".sub-menu").slideToggle(170):t.parent().addClass("expanded").children(".sub-menu").slideToggle(170))),$(".mm-footer").each(function()let e=$(this),t=$(".about-section .social-icons"),a=$(".footer-menu ul"),s=!!t.length&&t.clone(),n=!!a.length&&a.clone();!1!=s&&(s.attr("class","social-icons social color").find(".text").remove(),e.append(s)),!1!=n&&(n.attr("class","footer-links"),e.append(n))),$("#load-more").each(function()let e=$(this),t=$(".blog-pager .loading"),a="visible",s=e.data("url");e.on("click",function(n)n.preventDefault(),e.removeClass(a),$.ajax(url:s,beforeSend:function()t.addClass(a),success:function(t)let n=$(t).find(".blog-posts");n.find(".post").addClass("fadeInUp"),$(".blog-posts").append(n.html()),(s=$(t).find("#load-more").data("url"))?e.addClass(a):(e.removeClass(a),$(".blog-pager .no-more").addClass(a)),complete:function()t.removeClass(a),getStickySidebar(".main-wrap, .sidebar-wrap"),$(".blog-posts .thumbnail").not(".pbt-lazy").pbtLazy()))),$("p.comment-content").each(function()let e=$(this);$w.on("load resize scroll",function t()$w.scrollTop()+$w.height()>=e.offset().top&&($w.off("load resize scroll",t),e.replaceText(/\image\([^\]*)\\/image\/g,'<img decoding="async" src="https://www.caminhoes-e-carretas.com/2025/04/" alt="Comment image"/>'),e.replaceText(/\video\([^\]*)\\/video\/g,'<span class="comment-video-url">$1'),e.find(".comment-video-url").each(function()),e.find(".comment-video").each(function()let e=$(this),t=e.data("id");e.on("click",function()e.replaceWith(`[embed]https://www.youtube.com/watch?v=$t[/embed]`))))).trigger("scroll")}),getStickySidebar(".main-wrap, .sidebar-wrap"),$(".cookie-consent").each(function()let e=$(this),t=(e.find(".widget.Text"),e.find(".consent-button"));if(e.length>0)let a=t.data("title");a&&t.text(a),"true"!==Cookies.get("cookie_consent")&&(e.css("display","block"),$w.on("load",function()e.addClass("visible"))),t.off("click").on("click",function(t)t.stopPropagation(),Cookies.set("cookie_consent","true",expires:7,path:"/"),e.removeClass("visible"),setTimeout(function()e.css("display","none"),500))),$(".to-top").each(function()let e=$(this);$w.on("scroll",function()$(this).scrollTop()>=100?e.addClass("show"):e.removeClass("show"),e.offset().top>=$(".site-footer").offset().top-36?e.addClass("on-footer"):e.removeClass("on-footer")),e.on("click",function()$("html, body").animate(scrollTop:0,500)))}),pbt.hasCookie&&(window.cookieChoices=); //]]>
0 notes
Text
Efeito Turns Crazy
Ooooooooooooi ;3
Então eu to aqui desde cedo só vendo a dash =/ ai procurei uns tutos legais pra postar e achei esse aqui ! eu gostei dele, pode ser usado em efeito de moderadores, imagens da sidebar, parceiros, etc… Vamos aos códigos? Vamos!
PREVIEW DO EFEITO
Primeiro temos que colar todo o javascript do nosso efeito, então, cole esse código depois de <head> e antes de </head>:
<script src="http://static.tumblr.com/de00tfu/Ubhmbf7pu/jquery.js" type="text/javascript"></script> <script src="http://static.tumblr.com/de00tfu/zU6mbf7pa/raphael.js" type="text/javascript"></script> <script src="http://static.tumblr.com/de00tfu/MMtmbf7ob/init.js" type="text/javascript"></script> <script type="text/javascript"> $(function(){ var li = $('.gallery').find('li'); // find all 'li' elements li.each(function(i){ var t = $(this), img = t.find('img'), // find image in 'li' element src = img.attr('src'), // get path to your image width = li.width(), // get 'li' width height = li.height(); // get 'li' height img.hide().after($('<div>').attr('id', 'holder'+i).addClass('holder')); // hide all images and create containers for Raphael objects var r = Raphael('holder'+i, width*2, height*2), // create Raphael objects rimg = r.image(src, width/2, height/2, width, height); // create new images using previous variables rimg.hover(function(event) { this.animate({ scale: 2, // enlarge your images to the normal size rotation : 360 }, 1200, 'elastic'); }, function (event) { this.animate({ scale: 1, // decrease size of images rotation : 0 }, 1200, 'elastic'); }); }); li.hover(function(){ li.css({ 'z-index': 1 }); // set z-index to all 'li' elements $(this).css({ 'z-index': 2 }); // set z-index to the hovering element }); }); </script>
Pronto, depois de colar esse código acima, vamos para o css do theme ou seja tudo que esta dentro de <style> e </style> então cole esse código la:
.wrapper {margin:100px auto 0;width:900px;}ul.reset,ul.reset li {display:block;list-style:none;padding:0;margin:0;}.gallery ul li {width:100px;height:100px;margin:0 20px 20px 0;float: left;position:relative;}.holder {position:absolute;top:0;left:0;margin:-40px 0 0 550px;}a img {border:none;}
Vamos entender o código acima:
width:900px; quer dizer o a area total em que o efeito vai funcionar, mude só se voce for colocar mais de 3 colunas de efeitos.
width:100px;height:100px;margin:0 20px 20px 0; é o tamanho das imagens e o espaçamento entre elas…
margin:-40px 0 0 550px; o posicionamento das imagens, -40px é a altura e 550px é a largura, ajuste de acordo com o seu theme.
Depois de entender o código vamos colar o html do nosso theme, que vai ser esse código que voce vai colar onde quer que o efeito apareça:
<div class="gallery"> <ul class="reset"> <li><img src="http://25.media.tumblr.com/tumblr_m8wuyf0KdX1rdi3nvo1_250.png" alt=""></li> <li><img src="http://25.media.tumblr.com/tumblr_m8wuyf0KdX1rdi3nvo2_250.png" alt=""></li> <li><img src="http://25.media.tumblr.com/tumblr_m8wuyf0KdX1rdi3nvo3_250.png" alt=""></li> </ul> </div>
Pronto, mude as imagens para as suas e se quiser colocar um link coloque por fora de cada imagem.
0 notes
Text

Bruh this course has freaky react framework. Gonna use the R 18+ version of react as opposed to the PG 13 or MA 15+ react. This one has like swearing and gratuitous violence.
What do you want, adults only jQuery, $('developer').addClass('freaky-programmer');
0 notes
Text
Honda Crf 300 - Leistungssteigerung STAGE 1 / ECU FLASH / Euro5 Modell ( Erfahrungsbericht ) https://themotorbikechannel.com/wp-content/uploads/2024/09/1725500168_maxresdefault.jpg Source: Honda Crf 300 – Leistungssteigerung STAGE 1 / ECU FLASH / Euro5 Modell ( Erfahrungsbericht ) by CHP#26 Ride on 2 or 4 wheels. Please don’t forget to give the Video a “Like” on Youtube and subscribe to the channel! .addClass(“count”) Leistungssteigerung Honda CRF 300 Stage 1 : *ECU Flash von MB Racing *Sportluftfilter […] https://themotorbikechannel.com/honda-crf-300-leistungssteigerung-stage-1-ecu-flash-euro5-modell-erfahrungsbericht/?feed_id=2402&_unique_id=66d90b6d1fff8
0 notes
Text
Entrenador Personal en Horta, Barcelona
New Post has been published on https://entrenadorpersonaloriol.com/entrenador-personal-en-horta-barcelona/
Entrenador Personal en Horta, Barcelona
¡Más de 130 Reseñas de clientes satisfechos en Google!
Entrenador Personal en Horta, Barcelona
Ofrecemos un cambio real y duradero con entrenos personalizados a domicilio, en gimnasio o al aire libre.
5.0
Basado en 139 reseñas.
Solicitar más información
Tus metas, ¡Nuestros Objetivos!
Entrena acompañado de tu Entrenador Personal en Horta.
REvaluación inicial de tu estado físico y disponibilidad.
Desarrollar el texo aqui.
RAnálisis de tu rutina diaria para crear un plan a medida.
Desarrollar el texo aqui.
RDefinición de metas a corto, medio y largo plazo.
Desarrollar el texo aqui.
REntrenamientos dinámicos para evitar la monotonía.
Desarrollar el texo aqui.
RSesiones en gimnasios, a domicilio o al aire libre.
Desarrollar el texo aqui.
RPlan nutricional adaptado a tu estilo de vida, preferencias y objetivos.
Desarrollar el texo aqui.
RPersonalización según tu ritmo de vida.
Desarrollar el texo aqui.
REvaluación inicial de tu condición física.
Desarrollar el texo aqui.
RPlan de entrenamiento y nutrición personalizado.
Desarrollar el texo aqui.
RMetas a corto, medio y largo plazo.
Desarrollar el texo aqui.
REntrenamientos dinámicos sin aburrimiento.
Desarrollar el texo aqui.
REn gimnasio, a domicilio o al aire libre.
Desarrollar el texo aqui.
Un pequeño paso, para mejorar tu físico, salud y hábitos.
Oriol, Entrenador Personal en Horta ✅
Formulario Lateral
"*" señala los campos obligatorios
Nombre*
Nombre
Teléfono*
Email*
Interesado en:*
Interesado en:Plan 90 días intensivoPlan 12 semanas onlinePrograma de perdida de pesoPrograma para ganar musculoPrograma para ponerte en formaEntrenos a domicilioEntrenamiento al aire librePreparación física Oposiciones..Crear un habito de entrenamientoEntrenos de kick BoxingEntrenos de BoxeoOtros...
Cuéntanos que necesitas.*
Consentimiento*
Estoy de acuerdo con la política de privacidad.
/* <![CDATA[ */ gform.initializeOnLoaded( function() {gformInitSpinner( 1, 'https://entrenadorpersonaloriol.com/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery('#gform_ajax_frame_1').on('load',function()var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback)return;var form_content = jQuery(this).contents().find('#gform_wrapper_1');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_1').length > 0;var is_redirect = contents.indexOf('gformRedirect()') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form)jQuery('#gform_wrapper_1').html(form_content.html());if(form_content.hasClass('gform_validation_error'))jQuery('#gform_wrapper_1').addClass('gform_validation_error'); else jQuery('#gform_wrapper_1').removeClass('gform_validation_error');setTimeout( function() /* delay the scroll by 50 milliseconds to fix a bug in chrome */ , 50 );if(window['gformInitDatepicker']) gformInitDatepicker();if(window['gformInitPriceFields']) gformInitPriceFields();var current_page = jQuery('#gform_source_page_number_1').val();gformInitSpinner( 1, 'https://entrenadorpersonaloriol.com/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [1, current_page]);window['gf_submitting_1'] = false;else if(!is_redirect)var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content)confirmation_content = contents;jQuery('#gform_wrapper_1').replaceWith(confirmation_content);jQuery(document).trigger('gform_confirmation_loaded', [1]);window['gf_submitting_1'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_1').text());elsejQuery('#gform_1').append(contents);if(window['gformRedirect']) gformRedirect();jQuery(document).trigger("gform_pre_post_render", [ formId: "1", currentPage: "current_page", abort: function() this.preventDefault(); ]); if (event && event.defaultPrevented) return; const gformWrapperDiv = document.getElementById( "gform_wrapper_1" ); if ( gformWrapperDiv ) const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_1"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); const visibilityTestDiv = document.getElementById( "gform_visibility_test_1" ); let postRenderFired = false; function triggerPostRender() if ( postRenderFired ) return; postRenderFired = true; jQuery( document ).trigger( 'gform_post_render', [1, current_page] ); gform.utils.trigger( event: 'gform/postRender', native: false, data: formId: 1, currentPage: current_page ); if ( visibilityTestDiv ) visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); function debounce( func, wait, immediate ) var timeout; return function() var context = this, args = arguments; var later = function() timeout = null; if ( !immediate ) func.apply( context, args ); ; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); ; const debouncedTriggerPostRender = debounce( function() triggerPostRender(); , 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) const observer = new MutationObserver( ( mutations ) => mutations.forEach( ( mutation ) => if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) debouncedTriggerPostRender(); observer.disconnect(); ); ); observer.observe( document.body, attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], ); else triggerPostRender(); ); ); /* ]]> */
Testimonios de ClientesReales
5.0
Basado en 139 reseñas.
Ágata Romero
15:32 02 Jun 24
Suuper contenta con los entrenos con Albert! Me han ayudado... muchísimo a sentirme con más energía y fuerza y con la relación con mi cuerpo y el deporte! Una manera de entrenar super motivadora y divertida. Recomendado 100%leer más
Ana Cfogo
07:38 15 May 24
Trato genial y muy profesional. Gracias a él he obtenido... resultados desde el primer momento. 100% recomendable.leer más
Joan Barceló Pujol
16:49 08 May 24
Super agradecido de todos estos meses de entrenamiento duro... a manos de Oriol y su equipo de profesionales del fitness y nutrición.Mi cambio físico ha sido brutal bajando una media de 2 kg de grasa corporal y subiendo masa muscular al mes. He conseguido cambiar hábitos y mantenerlos en el tiempo. Me siento con más energía y menos cansado. He aprendido a entrenar y a comer y lo mas importante y cambiado mi mentalidad.Esfuerzo, disciplina, honestidad y cercanía, los valores que me han transmitidoleer más
Giorgia Foresta
18:32 22 Mar 24
Muy contenta de haber iniciado este camino con Xavi. Me... escuchó desde el principio sobre los objetivos que quería alcanzar. Y a día de hoy estoy más que satisfecha a nivel psicológico y físico. Le volvería a elegir sin duda. Del mismo modo, también hay que decir que Oriol es tan buen entrenador como una magnífica persona.leer más
Jordi tortosicrack
15:17 09 Mar 24
Grande Uriiiii ! El Mejor !!!
Marc Pardo Pestana
17:02 15 Feb 24
Marc Lanza Sotos
19:40 05 Jan 24
No puedo estar más contento con el proceso y seguimiento... que he recibidoleer más
Sergio Lopez
10:29 11 Dec 23
Entrenadores excelentes. Tanto Oriol, como Albert. Saben... lo que se hacen, y se adaptan a tus necesidades concretas para ayudarte al máximo. Trato fantástico!!leer más
Maria Del Aguila
14:04 02 Dec 23
Muy profesional, sabe llevarte al limite de tus capacidades
Oscar Pardo
11:37 20 Nov 23
Muy bien chico, está operativo 24/7
LAURITA FERNANDEZ
16:54 15 Nov 23
Excelente como entrenador y como persona. Tengo varias... lesiones de columna (cervical y una cirugía de hernia discal lumbar) desde que me operaron, hace ya tres años, entreno con él y no puedo estar más contenta y orgullosa.. hago vida normal haciendo deporte, entre ellos boxeo con saco y running, no estaría así si no fuera por él.Siempre atento y muy profesional.Lo aconsejo totalmente 😊leer más
Xavi Muñoz
11:33 01 Nov 23
alberto escribano gonzalez
17:58 01 Oct 23
La verdad que era bastante escéptico con el tema de los... entrenadores personales, pero desde que entreno con Xavi he notado una mejora pero no solo físicamente, también a nivel personal, te doy las gracias, buen entrenador y mejor persona.Gracias.leer más
Victor Hurtado
18:15 25 Sep 23
Hice la entrevista con Oriol y luego empecé a entrenar con... Albert, un excelente entrenador, que te apoya, es empático y te hace dar lo máximo de ti. Muy recomendadoleer más
Mauro Stanisci
09:18 03 May 23
Tuve la suerte de conocer y entrenar con Oriol durante... algunos meses y no puedo estar más agradecido por su ayuda y su dedicación durante todo este tiempo. Desde el principio, Oriol se tomó el tiempo de conocer mis objetivos y mis limitaciones físicas para crear un programa de entrenamiento personalizado y efectivo.Gracias a su experiencia y conocimientos, he logrado mejorar mi fuerza, resistencia y flexibilidad, y he visto una gran transformación en mi cuerpo. Además, Oriol siempre estuvo dispuesto a responder mis preguntas y a darme consejos nutricionales, lo cual ha sido clave en mi progreso.Pero lo que más destaco es su actitud positiva y motivadora. Siempre me hizo sentir cómodo y seguro durante los entrenamientos, y me empujó a dar lo mejor de mí mismo sin importar cuán difícil fuera el ejercicio. Sin duda alguna, es uno de los mejores profesionales en su campo, y lo recomendaría a cualquier persona que quiera mejorar su estado físico y su salud en general. ¡Gracias!leer más
Francesc Xavier Mayoral Macias
13:51 12 Dec 22
¡Entrenador personal de la temporada! Es un gran... profesional, él sabe exactamente lo que necesita. Aprenderá a entrenar adecuadamente y con la determinación de lograr sus objetivos. Cuando salga de la puerta, se siente más fuerte y más seguro. Muy contento con los resultados que he logrado con jacobo. Es un excelente entrenador. Si quieres mejorar tu salud, no busques más que jacobo. Un gran abrazo .leer más
Realismo: cambios realistas para personas reales
Evitamos fórmulas mágicas y nos centramos en un trabajo personalizado que realmente funciona.
Salud: priorizamos tu salud y bienestar
El cambio físico es una consecuencia de un buen entrenamiento, nunca el objetivo principal. Entrenamientos basados en la ciencia del deporte, aprovechando los últimos avances en fitness.
Mente: el cambio empieza en tu mente
Motivación, disciplina y creación de nuevos hábitos para alcanzar tu mejor versión física y mental.
Mente: el cambio comienza contigo.
Fomentamos la motivación, la disciplina y la adopción de nuevos hábitos para alcanzar tu mejor versión física y mental.
Te contamos más sobre nuestros servicios de entrenamientos personales en Horta, Barcelona
Planes de Entrenamiento Personalizado
Ofrecemos planes de entrenamiento personalizados en Horta, Barcelona, que se ajustan a tus necesidades y objetivos. Diseñados para ayudarte a perder peso, ganar músculo, mejorar tu forma física y rendimiento en deportes o artes marciales.
Sesiones personalizadas adaptadas a tus necesidades y ritmo de vida.
Múltiples ubicaciones para entrenar (gimnasio, aire libre, domicilio).
Asesoramiento nutricional y seguimiento personalizado.
Entrenamientos dinámicos, sin aburrimiento y con resultados positivos.
Solicita un Plan a medida
Un Entrenador siempre a tu lado
Nunca estarás solo/a, siempre tendrás un entrenador a tu lado para ayudarte con la técnica, ejercicios y motivación. Nuestro compromiso va más allá de un simple servicio, queremos que alcances tus objetivos y quedes satisfecho con nuestros servicios de entrenador personal.
Ofrecemos servicio de entrenador personal en Horta a domicilio, al aire libre o en gimnasios.
Entrenar con un Profesional Ahora
Precios de Personal Trainer en Horta
Ofrecemos tarifas asequibles y flexibles para nuestros servicios de personal trainer en Horta, Barcelona. Los precios varían según la duración y cantidad de sesiones contratadas.
Contacta conmigo sin compromiso para hablar de tus objetivos a corto y largo plazo.
Quiero Contactar Ahora
Preguntas Frecuentes (F.A.Q.)
¿Cómo puedo contratar tus servicios de entrenamiento personalizado en Horta?
Puedes contactarnos a través de nuestro formulario de contacto, por teléfono o WhatsApp. También puedes consultar los precios de entrenamiento en nuestra sección de planes entrenador personal.
¿Dónde se llevan a cabo las sesiones de entrenamiento personalizado?
Entrenador personal en Horta a domicilio. Entrenador personal en Horta al aire libre (parques de la zona). Entrenador personal en gimnasios. Podemos entrenar al aire libre, en tu domicilio o en gimnasios colaboradores. Los precios pueden variar dependiendo del lugar de la sesión.
¿Qué tipo de entrenamiento personalizado ofreces?
Ofrecemos entrenamientos personalizados para ayudarte a lograr tus objetivos de entrenamiento y nutrición. Además, incluimos asesoramiento nutricional y planes de dieta adecuados a tus objetivos y estilo de vida.
¿Cuál es el precio de tus servicios de entrenador personal en Horta, Barcelona?
Nuestros precios varían según el plan de entrenamiento y tus necesidades individuales. Contacta con nosotros para obtener un presupuesto personalizado.
¿Qué puedo esperar de una sesión de entrenamiento personalizado contigo?
Puedes esperar sesiones personalizadas, desafiantes y efectivas que mejorarán tu estado físico y salud. Te proporcionaré apoyo y motivación durante las sesiones para alcanzar tus objetivos de manera segura y eficaz.
¿Cuál es tu experiencia como entrenador personal?
Tengo más de 15 años de experiencia como entrenador personal en Barcelona y he ayudado a muchas personas a lograr sus objetivos. Consulta las opiniones de mis clientes en mi página de Google My Business para ver el nivel de satisfacción.
¿Ofreces descuentos o planes especiales?
Sí, ofrecemos planes de entrenamiento en Horta que permiten ahorrar dinero en comparación con las sesiones individuales. Solicita información sobre nuestros precios.
¿El precio del entrenador personal incluye dietas o asesoramiento nutricional?
Nuestro enfoque es integral. Todos nuestros planes de entrenamiento incluyen asesoramiento nutricional para garantizar mejores resultados. Consulta nuestros planes y precios para más detalles.
0 notes
Text
E-sensorial
New Post has been published on https://e-sensorial.es/presupuesto-aromatizacion/
Borrador automático
NO MALGASTE SU DINERO, SE LO PONEMOS FÁCIL
En E-sensorial le asesoramos y le cedemos el aromatizador más apropiado para su local ó estancia, y le enviamos exactamente el aroma que necesite y que usted elija pudiéndolo cambiar cuando desee, sólo abonando una pequeña cuota por todo el servicio y cubriéndole las posibles averías del aromatizador. Solo tendrá que recargar con el aroma cada uno ó dos meses de una manera muy sencilla ajustando la intensidad del aroma a sus necesidades sin depender de una empresa externa, y les vamos enviando el aroma según su consumo
Y sin permanencia, puede cancelarlo cuando usted desee.
Presupuesto aromatización
Tipo de establecimiento*
Superficies a aplicar, m2, etc.*
Tiene problema de malos olores?
Si tiene problemas de malos olores, marque la casilla.
Preguntar por*
Email*
Teléfono*
MARCAR
Política de privacidad
*
He leído y acepto la política de privacidad
gform.initializeOnLoaded( function() {gformInitSpinner( 26, 'https://e-sensorial.es/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery('#gform_ajax_frame_26').on('load',function()var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback)return;var form_content = jQuery(this).contents().find('#gform_wrapper_26');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_26').length > 0;var is_redirect = contents.indexOf('gformRedirect()') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form)jQuery('#gform_wrapper_26').html(form_content.html());if(form_content.hasClass('gform_validation_error'))jQuery('#gform_wrapper_26').addClass('gform_validation_error'); else jQuery('#gform_wrapper_26').removeClass('gform_validation_error');setTimeout( function() /* delay the scroll by 50 milliseconds to fix a bug in chrome */ , 50 );if(window['gformInitDatepicker']) gformInitDatepicker();if(window['gformInitPriceFields']) gformInitPriceFields();var current_page = jQuery('#gform_source_page_number_26').val();gformInitSpinner( 26, 'https://e-sensorial.es/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [26, current_page]);window['gf_submitting_26'] = false;else if(!is_redirect)var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content)confirmation_content = contents;setTimeout(function()jQuery('#gform_wrapper_26').replaceWith(confirmation_content);jQuery(document).trigger('gform_confirmation_loaded', [26]);window['gf_submitting_26'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_26').text());, 50);elsejQuery('#gform_26').append(contents);if(window['gformRedirect']) gformRedirect();jQuery(document).trigger("gform_pre_post_render", [ formId: "26", currentPage: "current_page", abort: function() this.preventDefault(); ]); if (event.defaultPrevented) return; const gformWrapperDiv = document.getElementById( "gform_wrapper_26" ); if ( gformWrapperDiv ) const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_26"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); const visibilityTestDiv = document.getElementById( "gform_visibility_test_26" ); let postRenderFired = false; function triggerPostRender() if ( postRenderFired ) return; postRenderFired = true; jQuery( document ).trigger( 'gform_post_render', [26, current_page] ); gform.utils.trigger( event: 'gform/postRender', native: false, data: formId: 26, currentPage: current_page ); if ( visibilityTestDiv ) visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); function debounce( func, wait, immediate ) var timeout; return function() var context = this, args = arguments; var later = function() timeout = null; if ( !immediate ) func.apply( context, args ); ; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); ; const debouncedTriggerPostRender = debounce( function() triggerPostRender(); , 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) const observer = new MutationObserver( ( mutations ) => mutations.forEach( ( mutation ) => if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) debouncedTriggerPostRender(); observer.disconnect(); ); ); observer.observe( document.body, attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], ); else triggerPostRender(); ); ); gform.initializeOnLoaded( function() jQuery(document).on('gform_post_render', function(event, formId, currentPage)if(formId == 26) );jQuery(document).on('gform_post_conditional_logic', function(event, formId, fields, isInit) ) ); gform.initializeOnLoaded( function() jQuery(document).trigger("gform_pre_post_render", [ formId: "26", currentPage: "1", abort: function() this.preventDefault(); ]); if (event.defaultPrevented) return; const gformWrapperDiv = document.getElementById( "gform_wrapper_26" ); if ( gformWrapperDiv ) const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_26"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); const visibilityTestDiv = document.getElementById( "gform_visibility_test_26" ); let postRenderFired = false; function triggerPostRender() if ( postRenderFired ) return; postRenderFired = true; jQuery( document ).trigger( 'gform_post_render', [26, 1] ); gform.utils.trigger( event: 'gform/postRender', native: false, data: formId: 26, currentPage: 1 ); if ( visibilityTestDiv ) visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); function debounce( func, wait, immediate ) var timeout; return function() var context = this, args = arguments; var later = function() timeout = null; if ( !immediate ) func.apply( context, args ); ; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); ; const debouncedTriggerPostRender = debounce( function() triggerPostRender(); , 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) const observer = new MutationObserver( ( mutations ) => mutations.forEach( ( mutation ) => if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) debouncedTriggerPostRender(); observer.disconnect(); ); ); observer.observe( document.body, attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], ); else triggerPostRender(); );
0 notes
Text
psa: if you have purchased my hollow crown skin
there has been an update with google chrome that has led to a bug in the main profile template. to fix this just add the following code to either the bottom of the main profile template or the bottom of the board wrapper!
$("#con-2").removeClass("pDetails").addClass("pDetailsOuter");$("#con-2").wrapInner( "<div class='pDetails'>");.pDetailsOuter {overflow-y: scroll;}
moving forward the skin should be fixed for new purchases!
0 notes
Note
Necro otra vez yo, estoy editando el perfil y quiero cambiar la parte que dice "Fuera de linea" y "En linea" por un icono, gracias
¡Hola de nuevo, anon! Tendrás que hacerlo con JS. Pon esto al principio de tu template:
<script> $(function(){ $('.psonline:contains("En línea")').each(function(){ $(this).parents('.Tu-Envoltorio-De-Perfil').addClass('useronline'); }); }); </script>
Y añade esto en algún lugar de tu template (dentro del envoltorio que rodee entero tu perfil sencillo):
<!-- BEGIN switch_show_status --> <div class="psonline">{USER_ONLINE}</div> <!-- END switch_show_status -->
Donde quieras que aparezca el iconito, pon, por ejemplo, el icono por defecto para todos los users offline:
<div class="psstatus"><em class="fas fa-moon"></em></div>
Y para modificar el estatus, usa la clase .useronline:
.Tu-Envoltorio-De-Perfil.useronline .psstatus em:before { content:'\f185'; }
¡Saludos!
3 notes
·
View notes
Text
0 notes