Ciao a tutti
premetto che non so programmare in javacsript ma me la cavicchio con html e css...
ho una pagina html con un contenuto centrale, testi, immagini e così via.
a sinistra del contenuto ho piazzato un div che contiene un piccolo box e un contenuto testo.
La mia necessità è che questo div non sia subito visibile ma deve apparire verso la fine del contenuto, in un determinato punto che non corrisponde all
Per spiegarmi meglio, qualcosa di molto simile a Medium: https://medium.com/refraction-tech-e...y-3a40c9be254b
Come ho risolto al momento:
la classe css del div è "boxcontent"
quindi ho:
il css:codice:<div class="boxcontent">...contenuto...</div>
codice:.boxcontent { float: left; margin-left: -70px; position: fixed; opacity: 0; } .boxcontent.boxcontent-showhide { opacity: 1; }
script js:
codice:(function($) { document.documentElement.className = "js"; $(window).scroll( function() { if ( $(document).scrollTop() > 300 ) { $(".boxcontent").addClass("boxcontent-showhide"); } else { $(".boxcontent").removeClass("boxcontent-showhide"); } }); })(jQuery);
In fase iniziale il div boxcontent è invisibile (opacity 0),
allo scrolling della pagina, 300px, viene aggiunta la classe "boxcontent-showhide"
e il div appare.
Già così funziona bene ma mi sono accorto che il div non dovrebbe apparire a 500px ma al termine dell'articolo che può trovarsi in una posizione che dipende dalla sua lunghezza.
Per esempio se ho un articolo di sole 3 righe il div non apparirà mai.... e se ho un articolo molto lungo il div apparirà prima che sia alla fine.
Dovrei quindi "intercettare" non dalla posizione top ma dalla fine del contenuto, ma non ho davvero idea di come fare.
Grazie per qualsiasi aiuto o suggerimento.