Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    2

    apertura pagina nel frame di destra

    salve;
    sotto riportato riguarda un menù testuale a esplosione.
    Dove devo modificare per aprire un link nel frame di destra?
    spero basti come spiegazione

    Ciao e grazie

    <BODY BGCOLOR="white" vlink="blue" link="blue">
    <script language="javascript1.2" type="text/javascript">
    <!--
    // DotMenu
    // ha una funzionalità cross-browser

    function getObjectRef(name) {
    if(document.getElementById) return document.getElementById(name);
    else if(document.all) return document.all[name];
    else return null;
    }

    // funzioni generali

    function show(name) {
    var el = getObjectRef(name);
    if(el) el.style.visibility = "visible";
    }
    function hide(name) {
    var el = getObjectRef(name);
    if(el) el.style.visibility = "hidden";
    }
    function getWidth(name) {
    var el = getObjectRef(name);
    return el.offsetWidth;
    }
    function getHeight(name) {
    var el = getObjectRef(name);
    return el.offsetHeight;
    }
    function moveMe(name,x,y) {
    var el = getObjectRef(name);
    if(el) { el.style.top = parseInt(y); el.style.left = parseInt(x); }
    }
    function moveBy(name,x,y) {
    var el = getObjectRef(name);
    if(el) { el.style.top = parseInt(el.style.top) + parseInt(y); el.style.left = parseInt(el.style.left) + parseInt(x); }
    }


    var menuCount = 0;
    function menuObject(name,x,y,caption, r, parent) {
    if ( (!document.getElementById&&!document.all) || navigator.userAgent.indexOf("Opera")>-1) return;
    document.write('<div id="divDot' + menuCount + '" class="dotempty" style="top: ' + y + '; left: ' + x + '"></div>');
    document.write('<div id="divCap' + menuCount + '" class="caption" style="top: 0; left: 0">' + caption + '</div>');

    this.name = name;
    this.parent = parent
    this.ref = "divDot" + menuCount;
    this.caption = "divCap" + menuCount
    if(r) this.radius = r;
    else this.radius = 400;
    this.subMenus = new Array();
    this.state = 0;
    this.moving = false;
    if(this.parent) this.action = "null";
    else this.action = "toggle";
    if(this.parent) this.startAngle = parent.startAngle;
    else this.startAngle = 0;

    getObjectRef(this.ref).objRef = this.name;

    this.show = function() { show(this.ref); }
    this.hide = function() { hide(this.ref); }
    this.moveMe = function(x,y) { if(this.parent) { x += this.parent.x(); y += this.parent.y(); } moveMe(this.ref,x,y); }
    this.moveBy = function(x,y) { moveBy(this.ref,x,y); }
    this.x = function() { return parseInt(getObjectRef(this.ref).style.left); }
    this.y = function() { return parseInt(getObjectRef(this.ref).style.top); }
    this.w = function() { return getWidth(this.ref); }
    this.h = function() { return getHeight(this.ref); }

    this.showCaption = function() {
    moveMe(this.caption, this.x() - (getWidth(this.caption)/2) + (this.w()/2), (this.y() + this.h()));
    show(this.caption);
    }
    this.hideCaption = function() {
    hide(this.caption);
    }
    this.setCaption = function(c) { getObjectRef(this.caption).innerHTML = c;}

    this.addItem = function(c,action,r) {
    getObjectRef(this.ref).className = "dot";
    if(!r) r = this.radius/2;
    var sub = new menuObject(this.name + ".subMenus[" + this.subMenus.length + "]",0,0,c,r,this);
    sub.parent = this;
    sub.action = action;
    sub.moveMe(0,0);
    this.subMenus[this.subMenus.length] = sub;
    return sub;
    }

    this.expand = function() {
    if(this.subMenus.length > 0) {
    var p = true;
    if(this.parent) {
    p = !this.parent.moving;
    for(var i=0; i<this.parent.subMenus.length;i++)
    p = p && ((this.parent.subMenus[i].state==0) || (this.parent.subMenus[i].state==this.parent.subMenus[i].subMenus.length)) && (this.parent.subMenus[i].moving==false);
    } else var o = false;


    if((!this.parent || this.parent.state == this.parent.subMenus.length) && p) {
    if(this.parent) this.collapseAll(this.name);

    var diff = 360 / this.subMenus.length;
    for(var i=0;i<this.subMenus.length;i++){
    this.subMenus[i].moveMe(0,0);
    this.subMenus[i].show();
    this.moving = true;
    this.subMenus[i].slide(this.subMenus[i].radius * cos(degToRad((diff*i)+this.startAngle)), this.subMenus[i].radius * sin(degToRad((diff*i)+this.startAngle)), this.name + ".subMenus[" + i + "].showCaption();" + this.name + ".moving=false;" + this.name + ".state+=1;");
    }
    if(this.parent){
    getObjectRef(this.parent.ref).style.filter = "alpha (opacity=33)";
    getObjectRef(this.parent.ref).style.MozOpacity = "33%";

    getObjectRef(this.parent.ref).className = "dotoff";
    getObjectRef(this.parent.caption).style.filter = "alpha (opacity=33)";
    getObjectRef(this.parent.caption).style.MozOpacity = "33%";
    for(i=0;i<this.parent.subMenus.length;i++) {
    getObjectRef(this.parent.subMenus[i].ref).style.filter = "alpha (opacity=66)";
    getObjectRef(this.parent.subMenus[i].ref).style.MozOpacity = "66%";
    getObjectRef(this.parent.subMenus[i].caption).style.filter = "alpha (opacity=66)";
    getObjectRef(this.parent.subMenus[i].caption).style.MozOpacity = "66%";
    }
    if(this.parent.parent) {
    for(i=0;i<this.parent.parent.subMenus.length;i++) {
    getObjectRef(this.parent.parent.subMenus[i].ref).style.filter = "alpha (opacity=33)";
    getObjectRef(this.parent.parent.subMenus[i].ref).style.MozOpacity = "33%";
    getObjectRef(this.parent.parent.subMenus[i].ref).className = "dotoff";
    getObjectRef(this.parent.parent.subMenus[i].caption).style.filter = "alpha (opacity=33)";
    getObjectRef(this.parent.parent.subMenus[i].caption).style.MozOpacity = "33%";
    }
    getObjectRef(this.parent.parent.ref).style.MozOpac ity = "33%";
    getObjectRef(this.parent.parent.ref).style.MozOpac ity = "33%";
    getObjectRef(this.parent.parent.ref).className = "dotoff";
    }
    }
    getObjectRef(this.ref).style.filter = "alpha (opacity=66)";
    getObjectRef(this.caption).style.filter = "alpha (opacity=66)";
    getObjectRef(this.ref).style.MozOpacity = "66%";
    getObjectRef(this.caption).style.MozOpacity = "66%";
    }
    }
    }

    this.collapse = function() {
    var p = true;
    p = !this.moving;
    for(var i=0; i<this.subMenus.length;i++)
    p = p && (this.subMenus[i].state==0) && (this.subMenus[i].moving==false);

    if(p && this.subMenus.length > 0) {
    for(var i=0;i<this.subMenus.length;i++){
    this.subMenus[i].hideCaption();
    this.moving = true;
    this.subMenus[i].slide(0, 0, this.name + ".subMenus[" + i + "].hide();" + this.name + ".moving=false;" + this.name + ".state-=1;");
    }
    if(this.parent){
    getObjectRef(this.parent.ref).style.filter = "alpha (opacity=66)";
    getObjectRef(this.parent.ref).style.MozOpacity = "66%";
    if(this.parent.subMenus.length != 0)
    getObjectRef(this.parent.ref).className = "dot";
    else
    getObjectRef(this.parent.ref).className = "dotempty";
    getObjectRef(this.parent.caption).style.filter = "alpha (opacity=66)";
    getObjectRef(this.parent.caption).style.MozOpacity = "66%";
    for(i=0;i<this.parent.subMenus.length;i++) {
    getObjectRef(this.parent.subMenus[i].ref).style.filter = "alpha (opacity=100)";
    getObjectRef(this.parent.subMenus[i].ref).style.MozOpacity = "100%";
    if(this.parent.subMenus[i].subMenus.length != 0)
    getObjectRef(this.parent.subMenus[i].ref).className = "dot";
    else
    getObjectRef(this.parent.subMenus[i].ref).className = "dotempty";
    getObjectRef(this.parent.subMenus[i].caption).style.filter = "alpha (opacity=100)";
    getObjectRef(this.parent.subMenus[i].caption).style.MozOpacity = "100%";
    }
    if(this.parent.parent) {
    for(i=0;i<this.parent.parent.subMenus.length;i++) {
    getObjectRef(this.parent.parent.subMenus[i].ref).style.filter = "alpha (opacity=66)";
    getObjectRef(this.parent.parent.subMenus[i].ref).style.MozOpacity = "66%";
    if(this.parent.parent.subMenus[i].subMenus.length != 0)
    getObjectRef(this.parent.parent.subMenus[i].ref).className = "dot";
    else
    getObjectRef(this.parent.parent.subMenus[i].ref).className = "dotempty";
    getObjectRef(this.parent.parent.subMenus[i].caption).style.filter = "alpha (opacity=66)";
    getObjectRef(this.parent.parent.subMenus[i].caption).style.MozOpacity = "66%";
    }
    }
    }
    getObjectRef(this.ref).style.filter = "alpha (opacity=100)";
    getObjectRef(this.caption).style.filter = "alpha (opacity=100)";
    getObjectRef(this.ref).style.MozOpacity = "100%";
    getObjectRef(this.caption).style.MozOpacity = "100%";
    }
    }

    this.collapseAll = function(except) {
    for(var i=0;i<this.parent.subMenus.length;i++) {
    if(this.parent.subMenus[i].name!=except && this.parent.subMenus[i].state==this.parent.subMenus[i].subMenus.length) {
    this.parent.subMenus[i].collapse();
    }
    }
    }

    this.toggle = function(e) {
    if(document.all) id = window.event.srcElement;
    else id = e.target;
    var dot = eval(id.objRef);

    if(dot.state==0 && !dot.moving) dot.expand();
    else if(dot.state==dot.subMenus.length && !dot.moving) dot.collapse()
    }

    this.doAction = function(e) {
    if(document.all) id = window.event.srcElement;
    else id = e.target;
    var dot = eval(id.objRef);

    if(dot.action == "toggle") dot.toggle(e);
    else eval(dot.action);
    }


    //getObjectRef(this.ref).onmousemove = this.toggle;
    getObjectRef(this.ref).onmouseup = this.doAction;

    this.slide = function(xx,yy,func) {
    if(!func) func = "";
    var px = this.parent.x();
    var py = this.parent.y();

    var x = xx - this.x() + px;
    var y = yy - this.y() + py;

    var d = sqrt(square(xx-this.x() + px) + square(yy-this.y() + py));

    var v = d/8;
    if(v<1) v = 1;

    if( (Math.abs(x) < v) && (Math.abs(y) < v) ) {
    moveMe(this.ref,xx + px,yy + py);
    if(func != "") eval(func);
    } else {
    var a = round(atan(x,y));
    dx = round(v * cos(degToRad(a)));
    dy = round(v * sin(degToRad(a)));

    this.moveBy(dx,dy);
    setTimeout(this.name + ".slide(" + xx + "," + yy + ", '" + func + "');",10);
    }
    }
    // Precarica i filtri di windows.
    if (menuCount==0 && document.all) document.all[this.ref].style.filter = "alpha (opacity=100)";
    menuCount++;
    return this;
    }



    var pi = Math.PI;
    function square(x) { return (x*x); }
    function sqrt(x) { return Math.sqrt(x); }
    function round(x) { return Math.round(x); }
    function rand(x,y) { return (round(Math.random()*(y-x)) + x); }

    function cos(x) { return Math.cos(x) }
    function sin(x) { return Math.sin(x) }

    function degToRad(x) { return ( x/(360/(2*pi)) ); }
    function radToDeg(x) { return ( x*(360/(2*pi)) ); }


    function atan(s,t) {
    if( s == 0.0 && t > 0.0)
    angle = 90.0;
    else if(s == 0.0 && t < 0.0)
    angle = 270.0;
    else if (s < 0.0 )
    angle = 180.0 + radToDeg(Math.atan(t/s));
    else if (s > 0.0 && t < 0.0)
    angle = 360.0 + radToDeg(Math.atan(t/s));
    else {
    if(s==0.0) s=0.00001;
    angle = radToDeg(Math.atan(t/s));
    }
    if(angle < 0.0) angle += 360.0;
    return angle;
    }


    //imposta le dimensioni della pagina
    if(document.all) pageWidth = document.body.offsetWidth-20;
    else pageWidth = innerWidth;
    if(document.all) pageHeight = document.body.offsetHeight-4;
    else pageHeight = innerHeight;

    //Crea il menu principale
    var menu = new menuObject("menu",pageWidth/2,pageHeight/3,"Mappa del sito HTML.it",pageHeight/2);
    menu.startAngle = -90;

    //mostra menu ed etichetta
    menu.show();
    menu.showCaption();

    //Aggiunge sottomenu
    menu.addItem("News","window.open('http://webnews.html.it/')");
    menu.addItem("Guide","toggle");
    menu.addItem("Percorsi","toggle");
    menu.addItem("Raccolte script","toggle");
    menu.addItem("Risorse","toggle");

  2. #2
    io non sono molto pratico di javascript, ma comunque, in html, quando metti un link in un frame e vuoi che si apra nell'altro devi usare il target
    se il frame di destra si chiama right (proprieta name dell'oggetto frame)
    allora il link in html risulta cosi
    LINK
    forse ho detto una idiozia.. ma spero ti sia utile
    »-(¯`v´¯)-» || AFRO4EVER - Remember the name

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    2

    re

    ciao;
    mi spiace ma non ho risolto
    arrisentirci

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.