Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: SγиtαxEяяoя en 14 Diciembre 2014, 23:38 pm



Título: Ayuda en javascript
Publicado por: SγиtαxEяяoя en 14 Diciembre 2014, 23:38 pm
Hola, hace mucho no pasaba por aqui, os vengo a pedir que me den un pequeño empujon, para los que saben de javascript !  :rolleyes:

Lo que pasa es que he intentado de todas las maneras posibles, inyectar un codigo javascript/css y no he podido lograr hacerlo, a ver intento modificar las propiedades del chat de facebook.. y volverlo mas grande, encontre este script y si, lo se que puedo cargar el script con Tampermonkey, pero yo quiero hacerlo desde un ContextMenu en Chrome.. Es decir, quiero lograr hacer en el ContextMenu un CheckBox, al estar en True, se active el script..

(http://i.imgur.com/AaVQntH.png)

Bien, este es el codigo que intento inyectar

Código
  1. addStyle(".fbDockChatTabFlyout{width:260px!important;height:500px!important;}");
  2. addStyle("div.conversationContainer{height:1000px!important;}");
  3.  
  4. function addStyle(css) {
  5. if (typeof GM_addStyle !== 'undefined') {
  6. return GM_addStyle(css);
  7. }
  8. else if (heads = document.getElementsByTagName('head')) {
  9. var style = document.createElement('style');
  10. try { style.innerHTML = css; }
  11. catch(x) { style.innerText = css; }
  12. style.type = 'text/css';
  13. heads[0].appendChild(style);
  14. }
  15. }

Si hay alguna manera de hacerlo, me pueden orientar?

Esta es la menera en que lo trate de hacer, pero no doy resultado...

(http://i.imgur.com/CYRkFcW.png)

Pero cuando inserto el codigo para aplicar los valores, este no carga :(

(http://i.imgur.com/dGnMI8E.png)


Igual, ya intente hacerlo de esta manera

Código
  1. window.onload=code ;
  2.  
  3. function code(){
  4.   if (typeof GM_addStyle !== 'undefined') {
  5. return GM_addStyle(css);
  6. }
  7. else if (heads = document.getElementsByTagName('head')) {
  8. var style = document.createElement('style');
  9. try { style.innerHTML = css; }
  10. catch(x) { style.innerText = css; }
  11. style.type = 'text/css';
  12. heads[0].appendChild(style);
  13. }
  14. }

Código
  1. function checkboxOnClick(info, tab) {
  2. addStyle(".fbDockChatTabFlyout{width:260px!important;height:500px!important;}");
  3. addStyle("div.conversationContainer{height:1000px!important;}");
  4. }
  5. var checkbox1 = chrome.contextMenus.create({"title": "test", "type": "checkbox", "onclick":checkboxOnClick});

Y nada  :huh: Alguna sugerencia?


Título: Re: Ayuda en javascript
Publicado por: EFEX en 15 Diciembre 2014, 00:31 am
Seguro en manifest.json definiste background ? La api tiene un evento que se dispara cuando se hace click.

Te dejo algunos ejemplos para que veas y tomes de ejemplo.

https://developer.chrome.com/extensions/samples#contextMenus
https://developer.chrome.com/extensions/contextMenus Resto de la API