In acest tutorial JavaScript e prezentat un script, in doua variante, care adauga in pagina un buton pentru derulare la inceputul paginii, butonul e adaugat doar cand utilizatorul deruleaza pagina in jos, mai mult decat inaltimea ferestrei.
Ideea e simpla, se inregistreaza un eveniment onscroll care detecteaza derularea paginii si verifica pozitia barei de derulare. Daca pozitia barei de derulare e mai mult decat inaltimea ferestrei navigatorului web, si butonul nu este in pagina, il adauga. Iar cand utilizatorul deruleaza pagina in sus si pozitia barei de derulare devine mai mica decat inaltimea ferestrei, si butonul e in pagina, il sterge.
Astfel, butonul apare in pagina doar cand e necesar. Explicatii sunt si in comentariile din cod.
<style type="text/css"><!-- #scrtop { position:fixed; top:80%; right:10px; width:29px; height:31px; background-color:yellow; border:2px solid blue; cursor:pointer; text-align:center; font-family:Calibri, Arial, sans-serif; line-height:15px;; font-size:11px; padding:0; -moz-border-radius:10px; -webkit-border-radius:10px; -khtml-border-radius:10px; border-radius:10px; } #scrtop b { display:block; margin:2px auto -1px auto; font-size:21px; padding:0; } --></style> <script type="text/javascript"><!-- /* Adaugare buton pentru derulare la inceputul paginii: marplo.net/javascript/ */ // functie pt. obtinere inaltime fereastra function getBrowsHeight() { if (self.innerHeight) var brows_height = self.innerHeight; else if (document.documentElement && document.documentElement.clientHeight) { var brows_height = document.documentElement.clientHeight; } else if (document.body) var brows_height = document.body.clientHeight; return brows_height; } // functie pt. obtinere pozitia barei de derulare function scrollY() { return window.pageYOffset ? window.pageYOffset : document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop; } var brows_height = getBrowsHeight(); // inaltime fereastra // inregistrare eveniment detectare derulare pagina window.onscroll = function() { var scrl_pos = scrollY(); // pozitia barei de derulare // daca pozitia barei de derulare e mai mult decat 110% din brows_height, si nu este element '#scrtop' // adauga buton pt. derulare la inceputul paginii // altfel, daca pozitia barei de derulare e mai mica decat 110% din brows_height, si este element '#scrtop' // sterge butonul pt. derulare la inceputul paginii if(scrl_pos > (brows_height * 1.1) && !document.getElementById('scrtop')) { document.body.innerHTML += '<div id="scrtop" onclick="scrollTo(0,0)"><b>⇑</b>TOP</div>'; } else if(scrl_pos < (brows_height * 1.1) && document.getElementById('scrtop')) { document.body.removeChild(document.getElementById('scrtop')); } } --></script>
<style type="text/css"><!-- #scrtop { display:none; position:fixed; top:80%; right:10px; width:29px; height:31px; background-color:yellow; border:2px solid blue; cursor:pointer; text-align:center; font-family:Calibri, Arial, sans-serif; line-height:15px;; font-size:11px; color:blue; padding:0; -moz-border-radius:10px; -webkit-border-radius:10px; -khtml-border-radius:10px; border-radius:10px; } #scrtop span { display:block; margin:2px auto -1px auto; font-size:21px; font-weight:800; padding:0; } --></style>Apoi adaugati urmatorul cod JavaScript in zona BODY, la sfarsitul paginii, inainte de tagul de inchidere </body>.
<div id="scrtop" onclick="scrollTo(0,0);"><span>⇑</span>TOP</div> <script type="text/javascript"><!-- /* Adaugare buton pentru derulare la inceputul paginii: marplo.net/javascript/ */ // functie pt. obtinere inaltime fereastra function getBrowsHeight() { if (self.innerHeight) var brows_height = self.innerHeight; else if (document.documentElement && document.documentElement.clientHeight) { var brows_height = document.documentElement.clientHeight; } else if (document.body) var brows_height = document.body.clientHeight; return brows_height; } // functie pt. obtinere pozitia barei de derulare function scrollY() { return window.pageYOffset ? window.pageYOffset : document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop; } var brows_height = getBrowsHeight(); // inaltime fereastra // register event on scroll window window.onscroll = function() { var scrl_pos = scrollY(); // pozitia barei de derulare // daca pozitia barei de derulare e mai mult decat 110% din brows_height, face '#scrtop' vizibil // altfel, daca pozitia barei de derulare e mai mica decat 110% din brows_height, ascunde '#scrtop' if(scrl_pos > (brows_height * 1.1)) { document.getElementById('scrtop').style.display = 'block'; } else if(scrl_pos < (brows_height * 1.1)) { document.getElementById('scrtop').style.display = 'none'; } }; --></script>
<ul> <li>http://coursesweb.net/html/</li> <li>http://www.marplo.net/html/</li> </ul>
.some_class { display: list-item; }
var obj = { "courses": ["php", "javascript", "ajax"] }; var jsonstr = JSON.stringify(obj); alert(jsonstr); // {"courses":["php","javascript","ajax"]}
$strhtml = '<body><div id="dv1">CoursesWeb.net</div></body>'; $dochtml = new DOMDocument(); $dochtml->loadHTML($strhtml); $elm = $dochtml->getElementById("dv1"); echo $elm->nodeValue; // CoursesWeb.net
I`m living here. - Traiesc /Locuiesc aici.
Estoy viviendo aquĆ. - Traiesc /Locuiesc aici.