Functia prezentata in aceasta paagina (
urlData() ) extrage
numele de domeniu si alte date din adresa URL:
Protocol, Calea Paginii, Nume-fisier, partea de cautare (dupa '?'), port, si hash (dupa '#').
Functia primeste un sir cu adresa URL si returneaza un obiect cu aceste date.
- Se foloseste o tehnica simpla: adresa URL e mai intai adaugata in atributul "href" dintr-un element <a> creat cu createElement(), apoi se aplica proprietatile obiectului "href" la adresa URL preluata din atributul "href".
•
Codul functiei:
// Etrage date din adresa URL. De la: https://marplo.net/javascript/
// Returneaza un obiect cu parti din adresa URL:
// protocol, nume domeniu (fara 'www'), port, cale paagina, nume fisier, partea de cautare si hash
function urlData(url) {
// obiect pt datele ce vor fi returnate
var redata = {protocol: '', domain: '', port: 80, path: '', file: '', search: '', hash: ''};
// creaza un element link si adauga adresa url in atributul "href"
var a_elm = document.createElement('a');
a_elm.href = url;
// adauga datele din URL in obiectul redata, si-l returneaza
redata.protocol = a_elm.protocol.replace(':', '');
redata.domain = a_elm.hostname.replace('www.', '');
if(a_elm.port != '') redata.port = a_elm.port;
redata.path = a_elm.pathname;
if(a_elm.pathname.match(/[^\/]+[\.][a-z0-9]+$/i) != null) redata.file = a_elm.pathname.match(/[^\/]+[\.][a-z0-9]+$/i);
redata.search = a_elm.search.replace('?', '');
redata.hash = a_elm.hash.replace('#', '');
return redata;
}
Exemplu:
<div id="urld">Aici sunt afisate datele din URL.</div>
<script type="text/javascript">
// Etrage date din adresa URL. De la: https://marplo.net/javascript/
// Returneaza un obiect cu parti din adresa URL:
// protocol, nume domeniu (fara 'www'), port, cale paagina, nume fisier, partea de cautare si hash
function urlData(url) {
// obiect pt datele ce vor fi returnate
var redata = {protocol: '', domain: '', port: 80, path: '', file: '', search: '', hash: ''};
// creaza un element link si adauga adresa url in atributul "href"
var a_elm = document.createElement('a');
a_elm.href = url;
// adauga datele din URL in obiectul redata, si-l returneaza
redata.protocol = a_elm.protocol.replace(':', '');
redata.domain = a_elm.hostname.replace('www.', '');
if(a_elm.port != '') redata.port = a_elm.port;
redata.path = a_elm.pathname;
if(a_elm.pathname.match(/[^\/]+[\.][a-z0-9]+$/i) != null) redata.file = a_elm.pathname.match(/[^\/]+[\.][a-z0-9]+$/i);
redata.search = a_elm.search.replace('?', '');
redata.hash = a_elm.hash.replace('#', '');
return redata;
}
// Test
var url = 'https://marplo.net:80/javascript/index.php?pg=tutorial&id=89#hash_part';
var urlOb = urlData(url);
// arata datele din URL in #urld
document.getElementById('urld').innerHTML = 'protocol: = '+ urlOb.protocol +'<br/>domain = '+ urlOb.domain +'<br/>port = '+ urlOb.port +'<br/>path = '+ urlOb.path +'<br/>file = '+ urlOb.file +'<br/>search = '+ urlOb.search +'<br/>hash = '+ urlOb.hash;
</script>
Rezultat:
protocol: = http
domain = marplo.net
port = 80
path = /javascript/index.php
file = index.php
search = pg=tutorial&id=89
hash = hash_part
Un Test simplu in fiecare zi
HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce atribut e folosit in tag-ul <img> pentru adresa imaginii?
href src rel<img src="http://coursesweb.net/imgs/webcourses.gif" width="191" height="63" alt="Courses-Web" />
Care din aceste coduri CSS ascunde elementul in pagina?
display: none; display: inline; position: relative;#id {
display: none;
}
Ce instructiune opreste executia lui while() sau for() ?
continue prompt() breakfor(var i = 0; i< 8; i++) {
if(i > 1) break;
alert(i);
}
Indicati functia utilizata pentru a crea constante.
define() include() defined()define("CONSTANT_NAME", "value");
echo CONSTANT_NAME;
Care este forma de plural a substativului "class" (clasa)?
classes clases clasisThis school has three classes.
- Scoala asta are trei clase.
Care este pluralul substativului "voz" (voce)?
vose voze vocesEscuché dos voces.
- Am auzit doua voci.