Cum să ascundeți elementele în HTML? Text ascuns pe JavaScript Hidden Hidden Cod View la pagina.

Descriere: Există situații în care nu doriți să retrageți imediat întregul conținut al paginii. De exemplu, în secțiunea " FAQ."Pentru a retrage doar numele întrebărilor. Și dacă o persoană este interesată de răspunsul la o anumită întrebare, el poate deschide răspunsul și când urmărește, apoi închide. Acest lucru creează confortul paginii și compactitudinea sa. Și Pentru asta am pregătit simplu script pe JavaScript.permițându-vă să deschideți sau să ascundeți un text specific (în general, anumite elemente), adică text ascuns pe JavaScript.

Rezultat: Faceți clic pe numele întrebării. Dacă faceți clic din nou, răspunsul se va agăța din nou.

Intrebarea 1.

Răspuns Numărul 1.

Intrebarea 2.

Răspuns Numărul 2.

Cod JavaScript (inserați între etichete și):

Codul HTML (introduceți între etichete și):

Intrebarea 1.



Intrebarea 2.


Sincer, nu este necesar ca nici un dezvoltator, în cea mai mare parte niciun cod JavaScript cu ușurință în browser și, prin urmare, nu există motive speciale pentru a vă ascunde codul. Acest lucru, ca să spunem, vizibil, ceea ce nu poate fi ascuns. Cu toate acestea, există băieți care sunt foarte timizi să-și arate codul pentru oricine, având în vedere că această proprietate nu poate fura, spunând bibliotecile. Ați creat un serviciu online, a creat în mod special o bibliotecă complexă puternică care efectuează anumite operațiuni, fără analogi ai serviciului dvs., nu există din biblioteca dvs. și, în mod natural, nu ați dori ca scriptul dvs. să vadă fiecare (dezvoltator) și ar putea face pe dvs. Exemplu similar, chiar mai bun. Desigur, nu este nimic în neregulă cu a face ceva mai bun, este o evoluție, dar din punctul de vedere al afacerii, concurenții sunt doar la îndemână.

Ce este necesar pentru asta?

Trebuie doar să înțelegeți algoritmul și să încercați să-l îmbunătățiți și vă relocați experiența așa cum am făcut scripturi ascunse. Primul lucru de care avem nevoie este de a testa sarcina pe serverul real (local), voi face acest lucru cu Denwer pe server local..

dar)Pentru testare, creați un director pe server.
merg inainte discul virtual., Am acest drive r, du-te acolo Du-te la dosarul de acasă

Creați director script și în interior Creați un dosar WWW, ca rezultat, veți reuși: Acasă / script / www / după aceea, asigurați-vă că actualizați serverul (reporniți Denwer)

b) Creați un fișier index.php - de exemplu, acesta este al nostru pagina principală Site, și aici trebuie să eliminăm scripturile ascunse. De asemenea, creați folderul "JS" în acest director.

Pentru sarcina noastră, vor fi necesare cereri AJAX, pentru că puteți utiliza funcțiile raționale, dar dacă proiectul dvs. va crește la dimensiuni care vor necesita utilizarea efectelor speciale, evenimente, conectați biblioteca și mă conectez în avans JQuery, deci În rădăcina dosarului "JS» Adăugați jQuery.js.

Apoi creați în același dosar dosar nouScripturile pe care trebuie să le ascundem vor fi stocate în ea. O voi numi "securitate":

în)Recrutăm codul de previzualizare în index.php


După cum puteți vedea, există un bloc

PHP presupune rolul de a citi scripturile dvs. care vor fi blocate pe server și nu le poate fi aplicat.

Dar mai întâi să creăm scripturile pe care vrem să le ascundem.


d) În dosarul de securitate, creați Script1.js și Script2.js, respectiv cu un astfel de conținut:


De exemplu, este de ajuns! Acum, astfel încât este imposibil să le contactați, trebuie să îl întrebați pe server, acest lucru se face datorită fișierului .httaccess.

Htaccess este un fișier de configurare stabilit de dezvoltatorul, utilizatorul acestui server.

Htaccess are astfel de conținuturi:

După aceea, la cerere:

Veți vedea acest lucru:

Astfel, dosarul dvs. de securitate este ascuns de ochii puriți, este inaccesibil.

Dacă încercați să conectați scripturile:

Apoi, în orice caz, fișierele dvs. nu vor fi executate, deoarece sunt ascunse la nivel global de către server

e)Reveniți la programul PHP bloc în index.php

Linia de jos este că PHP are acces la toate fișierele de pe server, indiferent dacă sunt ascunse sau nu, adică dacă vă înregistrați:


Apoi B. acest caz Vom vedea conținutul scriptului nostru ascuns.

Cu toate acestea, de la un alt server, conținutul scriptului nostru nu poate fi văzut și un mesaj de eroare este returnat 500. Aceasta este mâna noastră, astfel încât alte site-uri nu vor putea citi fișierele ascunse.

e)Acesta este modul în care rezultatul final va arăta:

Și acum ne ocupăm de modul în care funcționează totul. JQuery execută o interogare Post (acest lucru vă ajută să evitați găurile din index.php) pe serverul "Index.php JS \u003d rezultat", există un cec, dacă cererea de la serverul nostru (STPO () și adresa noastră Server "http: / / script" - C pentru acest exemplu), atunci scriptul verifică după variabila, adică adresa scriptului nostru ascuns și oferă un rezultat text. JQuery Done () Metoda primește un răspuns sub forma acestui conținut de text, iar acest text poate fi convertit într-o lucrare JavaScript, aceasta face ca funcția standard trans-tramvai să fie evaluată ();

În cele din urmă

Obținem rezultatul nostru, scripturile noastre nu pot fi văzute static sau dinamic prin consola browserului, dar este ușor să vă vedeți munca. Aceste scripturi și funcțiile lor sunt ușor executate. Cu toate acestea, este necesar să se gândească bine să aplicați această tehnică, deoarece în acest caz este ridicată problema performanței, viteza. EVAL (cod) Funcția între dezvoltatorii JavaScript Este considerat rău și se recomandă utilizarea analogului său de noua funcție ("retur" + cod), deși acesta din urmă nu știe cum să determine funcțiile din interior, adică dacă definiția funcției este înregistrată în variabila dvs. , Cod \u003d "Test de funcții () (alertă (1);); Testul (); ", Codul nu va fi îndeplinit, ceea ce înseamnă Eval () abordează toate cazurile de viață, adevărul are propriile nuanțe, care încă mai trebuie să citească.

Dacă vă puteți ascunde vreodată să vă ascundeți de pe outsiders pe pagina dvs. de script, care implementează un aspect frumos nerealist al unui meniu sau care efectuează alte acțiuni pe care nu ați dori să le vedeți în curând pe fiecare al doilea site?
Dacă da, metoda descrisă în acest articol vă va fi utilă în colaborare cu procedura codului. În același timp, voi face o rezervare odată că metoda nu este de 100%, ci de la cel mai neprofesional și o parte din profesioniști pe care îi va proteja.

Teorie

Să presupunem că avem pagina NOJS.PPP și pe el scenariul secret.js care trebuie să fie ascuns. Browser și utilizator pot obține un script de pe server în următoarele moduri:
  1. Încărcarea scriptului postat direct pe pagină sau încărcată cu DOM;
  2. Vizualizați scriptul din fereastră Codul sursă de pagină;
  3. Salvarea unei pagini cu toate fișierele de pe un hard disk;
  4. Introducerea unei adrese URL directă în bara de adrese.
În primul caz, browserul transmite în mod necesar http_referer http http_referer.
În al doilea și al treilea caz, acesta nu este transmis de toate browserele (Chrome, Firefox va emite un script descărcat anterior din memoria cache; Opera, adică este încărcată scriptul din nou, dar fără a trimite referer).
În al patrulea caz, reerificarea nu este transferată la niciuna dintre aceste patru browsere.
Dacă dați JavaScript dinamic cu verificarea antetului refererului în interogare, atunci vom proteja imediat de Opera și de exemplu, dar pentru Crome și Firefox va trebui să vină cu ceva de înregistrare. Vom descărca mai întâi un script, care la rândul său va încărca un alt script, în timp ce ambele descărcări vor fi verificate pentru refererul HTTP. Se constată metoda științifică că, dacă creați dinamic un script pe pagina Document.CreateEeLeEment ("Script"), apoi ștergeți-l din pagină, atunci scriptul va funcționa ca de obicei, dar nu va fi salvat.

Practică

nojs.php.
Această pagină poartă scopul de a descărca Script1.php
Găsiți Js.
După 10 secunde, ar trebui să vedeți lucrarea scriptului ascuns sub forma unui allert, faceți clic pe link-ul după alertă, pentru a vă asigura că evenimentele nu au scăzut, de asemenea. La acest link puteți vedea scriptul ascuns
script1.php.
Sarcina lui: Descărcați dinamic Script2.php, dacă există un antet de referință. Timpurile pot fi reduse, în funcție de timpul aproximativ al scriptului ascuns.
script2.php.
Sarcina lui: dați scriptul final dacă există un antet de referință

Rezultate

Ca rezultat, obținem că nu putem să vedem în pagina originală a paginii, nici să descărcați și să nu salvați scriptul ascuns cu ajutorul celor patru browsere testate. În general, îl puteți vedea în două moduri:
  • Accesați link-ul direct lider pe script2.php și situat pe pagina site-ului nostru;
  • Formarea unei solicitări HTTP care indică antetul refererului în acesta.
Creșteți eficacitatea Ascundei prin această metodă:
  1. Folosind mod-rescriere, înlocuind serverul Script1.js și script2.js la Script1.js și Script2.js la Script1.php și Script2.php, astfel încât pe pagină există toate fișierele JS obișnuite, deoarece PHP se grăbește brusc;
  2. Faceți un script fictiv cât mai complex, plauzibil și confuz, astfel încât persoana care încearcă să-l dezasambleze este destul de turnată înainte de conștientizarea a ceea ce a fost înșelat;
  3. Codul de procesare.

Bună ziua, cititor.
În acest articol mic, vrem să vă spunem cum să optimizați corect categoriile pentru magazinul online.
Când începem să optimizăm textul, ați configurat mai întâi pagina pentru relevanța maximă. Cum să o facă .
Dar, în această situație, apare următoarea problemă - trebuie să terminați prea mult text, iar acest lucru nu se potrivește cu designul site-ului.
Deci, trebuie să ascundeți o parte a textului de la utilizatoriDar, dintr-o dată, vizitatorul dorește să-l citească, astfel încât să o poată deschide cu ușurință.

O soluție interesantă este implementată în soclul "Hypermarket de Internet". De exemplu, Categorii:

Când facem clic pe acest link, se deschide descriere completa fără repornirea paginii. Dacă doriți să implementați aceeași decizie, atunci este descrisă mai jos modul în care este implementat în practică.
Acest moment poate fi rezolvat datorită limbajului de programare JavaScript.
JavaScript a fost creat inițial pentru a face paginile web "în viață".
Pentru a seta pagina web scripturile JavaScript., trebuie să introduceți un descriptor. Codul poate fi plasat ca în corpul antetului (între etichete ) și în corpul paginii (între etichete ).
Pentru a lucra scriptul, trebuie să creați o funcție care va fi utilizată în orice parte a site-ului. Vom folosi funcția Funcție SH ()

Pentru a afișa operația de script, trebuie să o puneți în locul specificat în acest formular.

Citește mai mult ...



Funcția SH () se numește aici.
La textul ascuns implicit a fost deschis în modificarea codului afișaj: Nici unul pe afișaj: Block.

Iată un exemplu al ceea ce sa întâmplat după ce a aplicat funcția la text:

În acest exemplu, 3000 de caractere SEO-Text au fost ascunse pe pagină, care au fost speriate pentru a promova site-ul. Când faceți clic pe linkul în sine, link-ul "Mai mult ..." va dispărea datorită stilului stilului.Display indicat în funcție.
Astfel încât să puteți implementa această funcție. Dacă aveți întrebări, întrebați-le în comentarii.

Cea mai simplă soluție pentru a afișa / ascunde elementul HTML al documentului utilizând JavaScript. Detalii Descrierea esenței procesului și a caracteristicilor sale.

Mijloace convenționale de uscare (eng. ascunde) sau arată (eng. spectacol.) Elementul HTML al documentului nu este posibil. Pentru a face acest lucru, utilizați proprietatea CSS afişa sau vizibilitate.. Diferența dintre ele este aceea vizibilitate.Deși face ca elementul HTML să fie invizibil, dar locul pe care îl ocupă, rămâne în spatele lui. Este clar că este mult mai des folosit afişa.

afişa (din engleza. afişa) - o proprietate multifuncțională care determină modul în care elementul trebuie afișat în document.

Lista valorilor posibile de proprietăți CSS afişa, înțeles de diferite browsere, nu este mare, dar acest lucru este destul de suficient.

  • bloc - Elementul este arătat ca bloc. Utilizarea acestei valori pentru elementele încorporate, cum ar fi eticheta, o determină să se comporte ca blocuri, adică. Rowing are loc la începutul și la sfârșitul conținutului.
  • În linie - Elementul este afișat ca fiind încorporat. Utilizarea acestei valori pentru elementele de bloc, cum ar fi o etichetă div, îi determină să se comporte ca o încorporată, adică. Conținutul său va începe cu locul în care sa încheiat elementul anterior.
  • listă-element. - Elementul este afișat ca bloc și se adaugă marca de listă.
  • nici unul - ascunde elementul din document. Locul ocupat de ele nu este rezervat și pagina web este formată ca un element și nu a existat.

Este clar că, pentru a schimba proprietatea CSS a unui anumit element HTML, trebuie să utilizați limba de programare scripting. În cazul nostru, este JavaScript. Dar totul este în ordine.

În primul rând, trebuie să decideți exact cum să contactați elementul HTML al documentului. Pentru a face acest lucru, puteți utiliza metoda obiectului getelemetbyid al obiectului de documente, care returnează o referință la elementul HTML al ID-ului atributului ID. De exemplu:

document.getelemetbyid ("test")

Acum trebuie să accesăm proprietățile stilului elementului HTML corespunzător. Aceasta utilizează proprietatea stilului. De exemplu:

document.getelemetbyid ("test"). Stil.display

Rămâne doar pentru a crea un element de control care ar schimba valorile proprietății CSS afişa, pe orice eveniment, de exemplu onClick (faceți clic pe mouse). Merită să acordăm atenție faptului că pentru a rezolva sarcina, va trebui să verificați valoarea curentă a proprietății CSS afişa Și schimbați-o la "opus". În cazul nostru, pentru a ascunde, vom folosi valoarea nici unul, și pentru a afișa "Gol". În al doilea caz, eliminăm proprietatea CSS afişa În elementul corespunzător, care va permite să lucreze corect atât cu blocuri, cât și cu elemente HTML încorporate.

Pentru claritate, voi da următorul exemplu:

Schimbare.

Rețineți că eticheta DIV are atributul de stil cu afișajul: nici o valoare. În acest fel? Specificăm valoarea proprietăților CSS afişa Implicit, egal nici unul. Elementul HTML va fi inițial ascuns.