mi problemas esta vez (espero que alguien me ayude) es este:
estoy desarrollando un plug-in jquery para mi, el cual al pulsar un boton o enlace muestra una capa tipo widget el cual tendra una aplicacion dentro
el problema es que no ejecuta el codigo ademas de detener lo que esta escrito despues de llamar dicha funcion
la funcion deberia ser algo asi
Código Javascript:
Ver original
$("#objeto").contextDialog("url de la aplicacion", "titulo", "aliniacion");
con ese codigo se supone que aparecera a un lado de el boton pulsado, pero no funciona, revise todo el codigo, y no encunetro mi error, por favor si pueden identificar cual es, me ayudaria mucho, igual cualquier sugerencia sobre optimizacion y cambio para mejorar!!
les dejo el codigo
Código Javascript:
Ver original
function($) { $.fn.contextDialog = function(title, urlContent, align){ return this.each( $(this).click(function(e){ $.fn.contextDialog._hide(); this.append( '<div id="appSide">' + '<div id="appTitle">' + title + '</div>' + '<div id="appContent">' + '<iframe id="appFrame" src="' + urlContent + '" frameborder="0" framespacing="0" border="0"></iframe>' + '</div>' + '<div id="appOptins">Ver mas</div>' + '</div>' ); var pos = this.offset(); switch(align){ case "right": $("#appSide").css({ top: pos.top, left: pos.left + this.innerWidth() }); break; case "left": $("#appSide").css({ top: pos.top, left: pos.left - $("#appSide").innerWidth() - 5 }); break; default: $("#appSide").css({ top: pos.top, left: pos.left + this.innerWidth() }); break; } this.click( function(a) { $.fn.contextDialog._hide(); a.preventDefault(); this.click( function(o) { $.fn.contextDialog(urlContent, title, align); o.preventDefault(); }); }); e.preventDefault(); }); ); }; $.fn.contextDialog._hide = function() { $("#appSide").remove(); }; })(jQuery);
aa, una cosa mas, esto fue basado a un codigo que desarrolle solo para un boton, pero no me sirve solo usarlo con un boton, ese codigo funciona bien, pero repito no me sirve solo para un objeto, tambien les dejo el codigo que funciona
Código Javascript:
Ver original
(function($) { $._context_dialog = { // Metodos de traducción, cambia el texto entre comillas //por los de tu idioma o el idioma deseado. dialogClass: null, showAll: 'Ver todas', //El cuerpo y estructura de la extención, NO. editar // Public methods context_dialog: function(urlContent, title, align) { if( title == null ) title = 'App'; $._context_dialog._show(title, urlContent, align) }, // Private methods _show: function(title, urlContent, align) { $._context_dialog._hide(); $("#appButton").append( '<div id="appSide">' + '<div id="appTitle">' + title + '</div>' + '<div id="appContent">' + '<iframe id="appFrame" src="' + urlContent + '" frameborder="0" framespacing="0" border="0"></iframe>' + '</div>' + '<div id="appOptins">' + $._context_dialog.showAll + '</div>' + '</div>' ); var pos = $("#appButton").offset(); switch(align){ case "right": $("#appSide").css({ top: pos.top, left: pos.left + $("#appButton").innerWidth() }); break; case "left": $("#appSide").css({ top: pos.top, left: pos.left - $("#appSide").innerWidth() - 5 }); break; default: $("#appSide").css({ top: pos.top, left: pos.left + $("#appButton").innerWidth() }); break; } $("#appButtonA").click( function(e) { $._context_dialog._hide(); e.preventDefault(); $("#appButtonA").click( function(e) { $._context_dialog.context_dialog(urlContent, title, align) }); }); }, _hide: function() { $("#appSide").remove(); } }, // Shortuct functions contextDialog = function(urlContent, title, align) { $._context_dialog.context_dialog(urlContent, title, align); } })(jQuery);
y pueden ver el codigo en ejecucion aqui
el del primer codigo http://dannegm.com/senpaiUno
el del segundo codigo http://dannegm.com/senpaiDos
el boton que debe ejecutar es el que esta de gris obscuro titulado como notificaciones