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 face un buton radio sau checkbox sa fie selectat?
checked="checked" selected="selected" disabled="disabled"<input type="checkbox" name="a_name" value="value" checked="checked" />
Ce valoare CSS redimensioneaza imaginea de fundal pana la marimea elementului?
repeat-x contain linear-gradient#id {
background:url("path_to_image.png");
background-size:contain;
background-repeat:no-repeat;
}
Ce operator se foloseste pentru restul impartirii a doua numere?
% * /var rest8_7 = 8 % 7;
alert(rest8_7);
Indicati functia PHP care rotunjeste numarul la valoarea intreaga mare.
floor() ceil() abs()$nr = ceil(3.5);
echo $nr; // 4
Indicati articolul corect la cuvantul "bike" in propozitia: "Alex wants to buy ... bike".
An The AAlex wants to buy a bike.
- Alex vrea sa cumpere o bicicleta.
Indicati articolul nedefinit corect pentru cuvantul: "libros" (carti)
unos una unLeí unos libros.
- Am citit niste carti.