Îmi amintesc că am citit undeva că în HTML5 nu era mai bine să utilizați `target="_blank" în HTML5, dar nu pot't găsi acum.
Este bine să continuați să utilizați target="_blank"
?
Știu că's, în general, considerat o idee rea, dar's de cel mai simplu mod de a deschide o fereastră nouă pentru ceva ca un PDF, și, de asemenea, nu't nevoie să se bazeze pe JavaScript.
Se pare ca `target="_blank" este mai bine. Acesta este listat ca un context navigarea cuvinte cheie în cele mai recente HTML5 proiect.
Este ok sa folosesc target="_blank"`; Acest lucru a fost făcut în XHTML pentru că vizează noul windows va aduce întotdeauna de alertă pop-up în cele mai multe browsere. XHTML va arăta întotdeauna o eroare cu atributul target într-o valida.
HTML 5 a adus-o inapoi pentru inca o mai folosim. L's prietenul nostru și ne putem't să plec.
Nu lăsa niciodată să plec.
Deși target="_blank"
este acceptabil în HTML5, eu personal nu încercați niciodată să-l folosească (chiar și pentru deschiderea Pdf-uri într-o fereastră nouă).
HTML ar trebui să definească sensul și conținutul. Intreaba-te, "ar semnificația a" un "element schimba în cazul în care "țintă" atribut au fost eliminate?" Dacă nu, codul nu ar trebui să meargă în HTML. (De fapt, sunt surprins W3C păstrat-o... cred că într-adevăr nu pot să plec.)
Browser-ul comportament, în mod special, comportament interactiv cu utilizatorul, ar trebui să fie puse în aplicare cu client-side scripting limbi, cum ar fi JavaScript. Când doriți ca browser-ul să se comporte într-un anumit mod, și anume, deschiderea-o fereastră nouă, ar trebui să utilizați JS. Dar, după cum ați menționat, acest comportament necesită browser-ul să se bazeze pe DOS. (Deși, dacă site-ul se degradează cu grație, sau îmbunătățește progresiv, sau altceva, atunci ar trebui să fie încă bine. Utilizatorii cu JS dezactivat nu va fi dor de mult.)
Acestea fiind spuse, niciunul dintre aceștia nu este răspunsul corect. Acolo somewhere este de părere că cum un link se deschide în cele din urmă ar trebui să fie decis de către utilizatorul final. Ia acest exemplu.
esti navigarea pe Wikipedia, mai adânc și mai adânc într-o gaură de iepure. Ai venit peste un link în dvs. de lectură.
Să zicem că vrei să mergi la pagina de legat repede înainte de a veni înapoi. S-ar putea deschide într-o filă nouă, și apoi închideți-l când ați terminat (pentru lovirea butonul "înapoi" și de așteptare pentru pagina de reîncărcare durează prea mult). Sau, dacă se pare interesant și doriți să salvați-l pentru mai târziu? Poate ar trebui să-l deschide într-o filă nouă în fundal în loc, și păstrați lectură pagina curentă. Sau, poate vă decideți ați terminat de citit această pagină, așa că o să urmați link-ul în fila curentă.
ideea este, ai propriul flux de lucru, și ai vrea browser-ul dumneavoastră să se comporte în consecință. S-ar putea obține destul de frustrat dacă aceste tipuri de decizii pentru tine.
Acestea fiind spuse, dezvoltatori web ar trebui să fie absolut clar unde merge link-uri, ce tipuri și/sau formate din surse de referință, și ceea ce fac ei. Ponturile poate fi prietenul tău (dacă nu're folosind o tabletă sau telefon; în acest caz, specificați aceste pe site-ul mobil). Știm cu toții cât de nasol este să fie luate pe undeva am fost't aștepta sau a face să se întâmple ceva ne-am't vreau să.
it's de cel mai simplu mod de a deschide o fereastră nouă pentru ceva ca un PDF
L's, de asemenea, cel mai simplu mod de a deranja non-utilizatorii de Windows. PDF deschide bine în browserele de pe alte platforme. Deschiderea-o fereastră nouă, de asemenea, interferează cu istoria de navigare și complică problema pe mici platforme, cum ar fi smartphone-uri.
NU deschide ferestre noi pentru lucruri cum ar fi PDF doar pentru versiunile mai vechi de Windows s-au rupt.
Majoritatea dezvoltatorilor web folosesc target="_blank" doar pentru a deschide link-uri în filă nouă. Dacă utilizați target="_blank" doar pentru a deschide link-uri într-o filă nouă, atunci este vulnerabil la un atacator. Atunci când deschideți un link într-o filă nouă (
target="_blank"` ), pagina care se deschide într-o filă nouă se poate accesa fila inițială și de a schimba locația sa, folosind fereastra.deschizător de proprietate.
Codul Javascript:
window.opener.location.replace(malicious URL)
Prevenire:
rel="nofollow noopener noreferrer"
În timp ce ținta este încă acceptabil în HTML5 nu este de preferat. La link-ul de la un fișier PDF utilizați download atribut în loc de atributul target.
Aici este un exemplu:
<a href="files/invoice.pdf" download>Invoice</a>
Dacă numele de fișier original este codat unic pentru stocare de fișiere, puteți specifica un user-friendly, descarca numele prin atribuirea unei valori pentru a descărca atribut:
<a href="files/j24oHPqJiUR2ftK0oeNH.pdf" download="invoice.pdf">Invoice</a>
Păstrați în minte că, în timp ce cele mai moderne browsere acceptă această caracteristică, unele nu pot. A se vedea caniuse.com pentru mai multe informații.
Poti face in felul urmator cu jquery, acest lucru va deschide într-o fereastră nouă:
<input type="button" id="idboton" value="google" name="boton" />
<script type="text/javascript">
$('#idboton').click(function(){
window.open('https://www.google.com.co');
});
</script>
Cred că atributul target este învechită pentru <link>
element, nu `, ca's, probabil, de ce ai auzit-o's nu ar trebui să fie utilizate.