Abrir enlaces externos en pagina nueva de forma optativa
Los visitantes de nuestro blog tendrán la posibilidad de escoger la forma de abrir los enlaces externos de nuestro blog, para ello usaremos un script y mediante una casilla en nuestra sidebar daremos la posibilidad de elección.
[1] Tendremos que copiar el script en el blog de notas por ejemplo y modificar los datos que he puesto en negrita por los vuestros .
<!--[2] Una vez modificado el script lo guardamos como linkprefs.js y lo subimos a un alojamiento colocando la dirección (url) obtenida en dicho alojamiento en este código y lo colocamos antes de </head>:
/*
Link Target Preferences v.1.1
http://www.noscope.com/journal/2004/10/link-target-preferences
*/
// BEGIN Configuration
// estas URLs seran consideradas internas y se ignoraran
var url_1 = "http://MIBLOG.blogspot.com";
var url_2 = "http://www.google.com";
// Preferencia por defecto:
// El valor "true" abre los enlaces en nueva ventana por defecto, "false" los abre en la misma
var open_blank_default = true;
// Titulo Blog - se usa solo para no crear interfencian con las cookies
// No espacios, ni caracteres especiales
var site_title = "elescaparatederosa";
// FIN configuracion
// Cookie Functions
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function eraseCookie(name) {
createCookie(name,"",-1);
}
// Checkbox Loader
function loadLinkPrefs () {
if (readCookie(site_title+"_linkprefs_cookie")) {
initVal = readCookie(site_title+"_linkprefs_cookie"); // Load cookied preference
} else {
createCookie(site_title+"_linkprefs_cookie", true, 20000)
initVal = open_blank_default; // If no cookie is set
}
openBlank = initVal;
setCheckbox(eval(initVal))
}
// Set Checkbox State
function setCheckbox(state) {
openBlank = state;
document.getElementById('linkprefs').checked = state;
setTargets();
createCookie(site_title+"_linkprefs_cookie", state, 20000)
}
// Configure Link Targets
function setTargets() {
var link, l = 0;
if (openBlank == true) {
while (link = document.links[l++]) {
// Open in _blank, except all links starting with...
if (link.href.indexOf(url_1) == -1 && link.href.indexOf(url_2) == -1 && link.href.indexOf('javascript') == -1) link.target = '_blank';
}
} else {
while (link = document.links[l++]) {
// Open in _top, except all links starting with...
if (link.href.indexOf(url_1) == -1 && link.href.indexOf(url_2) == -1 && link.href.indexOf('javascript') == -1) link.target = '_top';
}
}
}
// Event Listener, by Scott Andrew
function addEvent(obj, evType, fn) {
if (obj.addEventListener) {
obj.addEventListener(evType, fn, true);
return true;
} else if (obj.attachEvent) {
var r = obj.attachEvent('on'+evType, fn);
return r;
} else {
return false;
}
}
//-->
<script src='URL_DEL_SCRIPT'></script>
[3] Para terminar añadimos estas líneas de código donde mostraremos la casilla optativa para abrir los enlaces:
<div class="linkprefs">
<p style="display: block;"><input id="linkprefs" value="linkprefs" name="linkprefs" onclick="setCheckbox(document.getElementById('linkprefs').checked);" type="checkbox"/>
<label for="linkprefs" title="opciones de navegacion">Abrir enlaces externos en nueva ventana</label></p><span></span>
<script type="text/javascript">addEvent(window, 'load',loadLinkPrefs);</script>
</div>
Visto en: La Blogueria
65 comentarios:
Tenía muchas ganas de poder esta opción en el blog, en cuanto tenga unos minutos lo implemento, parece fácil, como todo cuando lo explica Rosa.
saludos.
esta bueno saberlo.... lo había visto en el blog de pizcos .... rosa, tu tienes una entrada para poner lo de los números de comentarios arriba? asi como el globito que tu tienes...lo he buscado pero no lo encuentro...saludos
Mosquito, no es demasiado complicado ;)
Bluesoul, la tengo en "borradores" y en breve la subiré...Pizcos lo ha publicado ya, aunque emplea un sistema distinto al mio, pero el resultado viene a ser el mismo...por si no quieres esperar:D
ahhh bueno no tengo apuro después veo por allá a ver que tal jajaja tomate tu tiempo.
saluditos
Hola Rosa, Tengo una duda, esto no influye en los anuncios de Adsense?, porque si se abren en una ventana nueva se infringen las políticas, me gustaría aplicarlo a mi blog para no modificar el código del enlace uno por uno, pero no se si me perjudica, Saludos y gracias!
Pablo, lo siento, pero no se más de los anuncios de Adsense que pueden ponerse en el blog...:$
Gracias Rosa,
Lo he hecho y todo salió bien,me abre los enlaces en ventana nueva,hace rato que andaba buscando una opción como esta,ya que de esta forma los visitantes no salen del blog.
Saludos.
Rosa,¡este truco es solo para firefox?.
En internet explorer no me funciona.
Saludos.
yaxkukmok , ¿Qué versión de IE usas? A mi en la 7, la última, si me funciona...
Uso la 7 Rosa.
yaxkukmok , no se entonces...a mi me va bien.:O
Estoy empezando en esto de los blogs y me interesa esto pero tu mencionas algo de alojamiento, seria bueno que recomiendes que alojamientos usar.
Saludos.
Anónimo, atento a mi próxima entrada;)
Bueno,ni modo Rosa.Cosas que pasan,lo bueno que me sirve en Firefox,así lo dejaré.
Me gusta como te quedó la cabecera de tu blog,muy navideño,Felicidades:-).
Saludos y Gracias como siempre por la ayuda que nos das para mejorar nuestros Blogs.
yaxkukmok , ya sabes como es IE...quizá otro script que tengas aplicado y que IE no admita a los dos juntos...
Muchisimas gracias rosa!...
ahora estoy empezando a hacer un nuevo blog y el tuyo me ayudara mucho :D
gracias rosa esto si me sirve d muxo y me salio en una xD
m pregunto q sera d mi blog sin tu ayuda creo q no hubiera llegado muxo gracias a si vienes alguna ves a lima peru m dices pa darte alojamiento comida te hago un tour lo quieras xD
Hola Rosi, sabes, gracias a este truco siguiendo los pasos de escribir en el blog de notas y luego grabarlo en .js por fin! aprendi como crear o modificar los archivos con esa extensión, los emoticones los puse en el blog pero ya con esto entiendo de alojarlos en otro lugar ;) nunca es tarde no?.. muchas gracias :)
besos y un abrazote :-L
Pau, por supuesto que nunca es tarde ¡para nada!:-L
Hola Rosa!
Trate de usar este script para mi blog, pero desafortunadamente, conflije con el de expandir (+/-) que uso en mis entradas. Hay alguna forma de hacer que todos los enlaces se abran en una nueva pagina, sin que conflija con el script de expandir??
Jessica, si, a veces pasa eso con los scripts, que se pelean :D
Prueba con este:
http://elescaparatederosa.blogspot.com/2007/09/abrir-los-links-externos-en-pgina-nueva.html
rosa estyo trtando de subir est asi pero estoy perdido,,donde se encuentra esto
linkprefs.js
Henry, el script es el código del paso [1]
Una vez le hayas hecho los cambios lo pegas en el blog de notas y a la hora de guardarlo lo llamas linkprefs.js o lo que sea, como si es Henry.js pero siempre ha de llevar el .js para que se guarde en formato javascript.
Por cierto, ¿has visto esta otra entrada? Quizás te sea más sencillo:
http://elescaparatederosa.blogspot.com/2007/09/abrir-los-links-externos-en-pgina-nueva.html
Rosa ,,confucion con estos pasos abriran una ventana nueva de nuestroblog,de un articulo de nuestro,,me explico ,ejemplo ller mas,,cuando den el clic se abre una ventana nueva quedandose en el blog de nosotros
henry, solo se abrirán los enlaces a otras web en pagina nueva, los que llevan a cualquier sitio de nuestro blog no.
rosa, perdón que pregunte por acá ... ¿las plantillas pueden tener un máximo de elementos que agregarle a la sidebar? porque en la que estoy usando le agregue 4 no mas y no me deja agregar mas ...
ya vi que era...sorry :S es que cuando los arrastraba en los elementos de la pagina, los agregaba de abajo hacia arriba y se me perdían...Buenas noches rosa, Madrugadas para ti
bueno mi gente esto me esta comiendo,,rosa me podrias ayudar,,
estoy un poco perdido con esto
ok,gracias ,,,otra cosa que le quiero hacer a mi blog,,como puedo poner un link de mi propio blog,pero que cuando le den un clic a leer mas,se queden en mi pagina,y despues si quieren dejen el cometario o ir a la fuente o enlace de la fuente.
Hola Rosa! Intenté implementar el de "links en ventana nueva" y no funciona, dije, bueno entonces será opcional, y tampoco!! ahora: cómo puedo saber qué script es el que está "peleando"?. Soy principiante Rosa ayudaaa.
Gracias! Saludos a todos.
Henry, mira en el comentario número 24, te he dejado un enlace a otra entrada para hacer lo mismo de forma más sencilla, más no puedo explicarte...
Y lo del leer mas puedes verlo aquí:
http://elescaparatederosa.blogspot.com/2008/12/leer-mas-solo-en-los-post-escogidos.html
natura, prueba a usar el otro (el que recomiendo a henry en el comentario 24) pero después de copiarlo de mi blog, NO lo pegues en ningún editor (ni blog de notas ni nada) colócalo directamente en tu blog.
Si, lo hice y tampoco, el caso es que lo tenía de antes y evidentemente algún otro script que coloqué hizo que deje de funcionar. Lo que mas me interesan son las imágenes de las entradas que abran en ventana externa. Gracias Rosa. Besos.
natura, pues estos script vienen a ser lo mismo, llevan las mismas instrucciones...lo que me extraña es eso de que "algún otro script que coloqué" porque no veo ninguno en tu blog que pudiera interferir con este...
Rosa no se que esta pasando,,bajo todo como dice las intruciones pero,no esta trabando,cuando guardo los cambios todo sale bien,pero cuando le doy a un enlace en la pagina no lo habre en una venta nuevva,,,antes lo hice y estaba trabajando pero me di cuenta hoy que no estaba trabajnado,,como lo puedo arreglar
Henry, en casi todos los casos necesito ver el blog para poder ayudar, así que cuando preguntes algo, deja un enlace al blog o mejor pon tu perfil en publico.
No sé :( es que desde que encontré El escaparate no dejo de hacerle cosas al blog y mi ignorancia seguramente hizo que haya hecho macanas en mi plantilla, pero no importa ahora me estoy tomando el trabajo de agregarle a cada imagen el target="_blank". Gracias Rosa por contestar, sos una genia!!! Saludos.
esta genial tu blog me servirá de mucha ayuda para mi que apenas voy empezando gracias
http://neorec.blogspot.com/
rosa hay algun modo para q abra a otra ventana solo links q yo quiera? x q solo quiero q abrar links externos d la descarga d los discos ya q puse este y too lo abria en otra pagina el archivo las etiquetas etc etc y es algo molesto x eso lo saque respondes pss xP
MINDistortion , para eso tendrás que añadir el "target="_blank" a cada enlace que quieras individualmente.
http://elescaparatederosa.blogspot.com/2007/02/abrir-pgina-en-una-ventana-nueva.html
De nuevo el Perro :)
Rosa debido a sugerencias sobre los enlaces en mi Jauría aplique esta opción con buenas criticas, salvo alguno que otro que me pidió, si podría dejarse la opción de abrir en otra ventana como predeterminada, (parece que insume mucho tiempo clickear la opción :O ), en fin, me gustaría saber donde se puede configurar este inventilo para dejar como predeterminada la opción de abrirse en otra ventana, osea, clickeada la opción desde un principio ya que de comienzo aparece la casilla vacia, y los vinculos se abren en la misma pagina.
Muchas gracias Rosa :)
Beso grande
Un perro, pues se supone que el script lo que hace, mediante el uso de cookies es recordar la última opción de quien lo utilizó.
Además en una de sus líneas:
var open_blank_default = true;
Se supone también que si está puesto "true" se abrirán en página nueva por defecto...
Todo esto es teoría, ya que yo a pesar de haberlo colocado, ni me he fijado si va bien :$, ni nadie me ha dicho nada sobre esto...
Un perro, ya que estamos, hazme un favorcillo...;)
Mira si tu puedes acceder sin problemas a esta dirección:
http://zonacerebral.com/2009/01/concurso-para-bloggers-de-zona-cerebral.html
Sin problemas Rosa, tardo un poco en cargar pero estoy visualizando la pagina.
:)
yo no soy unperro pero intente y si logre entrar sin ningun problemilla :P
Gracias a los dos :D no se porque motivo no se me termina de cargar nunca la web de Iván, jolin|O
Rosa, quite los scripts que tenia que creía que interferían con este, pero nada, no puedo lograr que se abra nada en ventana nueva...que estoy haciendo mal??
Jessica, este mismo script es el que uso yo aquí y no me ha dado ningún problema con los demás...tal vez sea la url del archivo que hay que subir que sea incorrecta...¿a donde lo has subido? o mejor ¿puedes pegar aquí su url?
Rosa, use este metodo y el de abrirlos siempre en otra pagina...y nada...
El script no se como subirlo a skydrive, pues no se que es un bloc de notas para hacerle los cambios y luego grabarlo :S
Jessica el blog de notas está incluido en Windows, normalmente en Inicio, y es un programa para editar textos.
De todos modos, el otro sistema, el de colocar directamente el script en la plantilla debería funcionarte, aunque tampoco es algo necesario, de hecho yo acabo de retirar el mio, quien quiere abrir los enlaces en una nueva página o pestaña puede hacerlo con el ratón...
Je je..lo se Rosa...es que la gente es haragana :D Y mi blog de Intérpretes de ASL/Español está dirigido a una audiencia que no es muy "tecno saavy" :S Pero gracias por la explicación! Ahora entiendo que el bloc de notas es "Notepad". Je je, nosotros los puertorriqueños con el Spanglish estamos terribles.
Me has ayudado tanto a personalizar mi blog que ahora otros me piden que les ayude en los suyos! (Ja!, como si yo supiera! Mejor los mando que le den una visita al Escaparate;) )
Lo único malo es que ahora pienso que debería haber usado la plantilla minima, para adaptarla yo luego, !pues que trabajo me ha dado esta plantilla, caramba! Quizas el año que viene...que quiero ponerle fotos de perfil en comentarios, un slider de las imagenes del blog, y un espacio para comentarios en video...jeje..me has hecho ambiciosa!
Gracias mil, Rosa! Vales lo que pesas en oro!
Jessica, siempre he dicho que está muy bien ser ambicios@ siempre que con ello no hagamos daño a nadie...y en este caso así es, así que ¡adelante con tu ambición! te hará aprender mucho.
Si puedes ayudar a otros en cualquier cosa y estás dispuesta o te apetece en ese momento ¡adelante! verás que hay pocas satisfacciones tan grandes.
Y si, la Mínima para ti que eres inquieta y en eso de los cambios "no te conformas" con poco, estaría genial...partes casi de cero y puedes lograr cualquier cosa.
Un abrazo cielo!
Hola Rosa! estoy queriendo utilizar este código de abrir los enlaces en una nueva ventana, pero solamente para los link de descarga, o sea, que los visitantes al hacer click sobre el link que dice "Descargar" se abra una nueva ventana, pero solo para eso, no quisiera que al hacer click en cualquier otro link como por ej: en "Leer mas..." se abra otra ventana, eso no, me entiendes verdad? espero que puedas ayudarme con esto, saludos!
Fede Para eso lo mejor es que uses el target="_blank" en los enlaces de descarga o los que quieras abrir en ventana nueva...eso si, esto es manual, no hay otra manera de hacerlo.
http://elescaparatederosa.blogspot.com/2007/04/insertar-enlaces-links.html
Gracias a tu respuesta lo pude solucionar, de nuevo gracias Rosa!
hola que tal
estoy buscando un codigo HTML que los habia visto antes pero no me acuerdo como era..
la cosa es qe qisiera qe me ayudes en poner un codigo para que al hacer click en un enlace se abra otra ventana pero no adjuntando el codigo en el enlace sino hacerlo en edicion HTML para que sea asi en todos los enlaces
...
gracias de antemano
David Supongo que sería este:
http://elescaparatederosa.blogspot.com/2007/09/abrir-los-links-externos-en-pgina-nueva.html
Pero ya te aviso que da problemas con según que otros scripts estés usando :S
Por fin he conseguido que el atributo "checked" funcione! Quería la opción marcada por defecto pero no conseguía hacerlo. El caso es que en mi anterior plantilla si funcionaba... cosas de la maquetación :D
Gracias Rosa ;)
Hola Rosa!
¿Qué código debo ponerle a mi plantilla para que de forma predeterminada todos los links se abran en ventana nueva?
¿Y sería posible que solamente los enlaces del gadget de archivo fueran los únicos que se abrieran en la misma ventana? ¿Sería posible hacer eso :O ? porque me ayudaría mucho.
Saludos!!!! :D
luisdelbar • • • Colocando esto antes de </head> TODOS los enlaces del blog se abrirán en otra ventana, lo cual me parece una idea descabellada... pero cada uno es cada uno...
<base target="_blank" />
En cuanto a evitar que un gadget concreto lo haga, una vez añadido esto, no tengo idea de como evitarlo...
:D Muchas Gracias Rosita, si es un poco descabellado, pero hay algunos blogs en especial en los que me gustaría que funcionara así. Gracias! y un abrazo desde México! :D
Hola de nuevo!
Estaba pensando que ¿será posible que solamente los enlaces que aparecen dentro de las entradas sean los que abran en ventana nueva de forma predeterminada?. Solamente los que estén en las entradas ¿sería posible? muchas gracias de nuevo Rosa. :D
luisdelbar • • • Eso no es posible, solo si lo añades de forma manual a cada uno (así lo hago yo :S)
Pero si he visto como hacerlo en todos y seleccionas en los que no quieras (lo que preguntabas para el Archivos)... mira esta entrada:
http://ciudadblogger.com/2010/04/abrir-todos-los-enlaces-en-otra-ventana.html
Gracias Rosa!
Voy a intentarlo!. Me quedé sin compu unos días es por eso que te contesto hasta hoy.
Me va a ayudar bastante esta opción que me das, lo voy a intentar. Muchas Gracias! Saludos! =)
Publicar un comentario
Si vas a dejar una consulta, procura tener habilitado tu perfil en Blogger o deja la url del blog a revisar (no enlace).
Los comentarios están siendo moderados.
Comentar con el formulario antiguo