2 votos

Safari Bookmarklet - acceso a DOM

He probado los siguientes bookmarklets:

javascript:document.cuerpo.de estilo.width='50%';

o

javascript:document.getElementsByTagName('cuerpo')[0].width='50%';

Ambos trabajan en la consola, pero no en el bookmarklet. ¿Cuál es la razón?

Ambos funcionan muy bien como Chrome bookmarklets.

También, este script funciona bien (en HTML5 videos):

javascript:document.getElementsByTagName("video")[0].playbackRate=2.5

2voto

tubedogg Puntos 6827

Safari requiere que un literal signo de porcentaje en una dirección URL (%) ser codificados en un bookmarklet (%25...mientras que parece que sólo 25 añadido, el signo de porcentaje seguido de dos números es decodificado literal signo de porcentaje). Asimismo, la propiedad es .style.width, no sólo .width.

Cambiar su bookmarklet a este:

javascript:document.getElementsByTagName("body")[0].style.width='50%25';

He confirmado esto funciona en Safari v8.0.6 (OS X 10.10.3).

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X