JavaScript - Abrir una sola capa??

   
Vista:

Abrir una sola capa??

Publicado por ddmlls (2 intervenciones) el 01/11/2010 00:09:46
Hola a todos, tengo un problema, os explico:
Estoy intentando hacer un escritorio online (con mis reducidos conocimientos de javascript), gracias a este proyecto [URL="http://prototype-window.xilinus.com/"]http://prototype-window.xilinus.com/[/URL]. Mi proyecto lo estoy haciendo [URL="http://bikersburgos.com/vip/"]aqui[/URL].
Bueno, quiería que "al dar" (y no antes como me pasa) al icono que hay en el escritorio salga "una sola" ventana (no dos como me pasa..). Y que al minimizar se vaya a la barra de tareas (eso si que funciona con el 1º código que os dejo, pero si pongo el 2º código que solo abre una ventana no funciona).

Aqui os dejo mis códigos a ver que me podeis decir:

Esto es lo que hace que se habran 2 ventanas y con este si que va lo de minimizar a la barra de tareas, como puedo hacer que solo salga una ventana y cuando se pinche en el enlace??
[HTML]<script language="JavaScript">
function initWebOS() {
// Create 2 windows
$R(1,2).each(function(index) {
var win = new Window({className: "mac_os_x", blurClassName: "blur_os_x", title: "window #"+index, width:250, height:150, top: 100 + index*50, left:100 + index*50});
win.getContent().update("<h1>Window #" + index + "</h1>");
win.show();
})
//

}
Event.observe(window, "load", initWebOS)
</script>
[/HTML]

Este es el que pone en la página para abrir ventanas, pero con este no se minimiza en la barra de tareas:

[HTML]<script language="JavaScript">
win = new Window({className: "mac_os_x", title: "Sample", width:200, height:150, destroyOnClose: true, recenterAuto:false}); win.getContent().update("<h1>Hello world !!</h1>");
win.showCenter();
</script>[/HTML]

Y por último este es el script que minimiza la ventana a la barra de tareas:
[CODE]// Overide Windows minimize to move window inside dock
Object.extend(Windows, {
// Overide minimize function
minimize: function(id, event) {
var win = this.getWindow(id)
if (win && win.visible) {
// Hide current window
win.hide();

// Create a dock element
var element = document.createElement("span");
element.className = "dock_icon";
element.style.display = "none";
element.win = win;
$('dock').appendChild(element);
Event.observe(element, "mouseup", Windows.restore);
$(element).update(win.getTitle());

new Effect.Appear(element)
}
Event.stop(event);
},

// Restore function
restore: function(event) {
var element = Event.element(event);
// Show window
element.win.show();
//Windows.focus(element.win.getId());
element.win.toFront();
// Fade and destroy icon
new Effect.Fade(element, {afterFinish: function() {element.remove()}})
}
})[/CODE]

Si me podeis ayudar os lo agradecería mucho :beso:
Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de ScriptShow

RE:Abrir una sola capa??

Publicado por ScriptShow (387 intervenciones) el 01/11/2010 11:40:48
Saludos,

no soy de Frameworks ni de enormes Librerías que hacen el trabajo por mí. No obstante, probaría con pequeños cambios. Veamos:

En el evento:

Event.observe(window, "load", initWebOS)

Añade esto:

// Event.observe(window, "load", initWebOS)

Para evitar que se ejecute. Después, puedes recuperarlo eliminando las barras.

En la función:

$R(1,2).each(function(index) {

Cambia esto:

$R(1,1).each(function(index) {

$R(0,1).each(function(index) {

Etc..

Prueba diferentes combinaciones, no las mezcles, utiliza sólo una.

Espero sea útil.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Abrir una sola capa??

Publicado por ddmlls (2 intervenciones) el 01/11/2010 14:59:05
Muchisimas gracias, ahora me va perfecto =)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar