Avatar billede svenne182 Nybegynder
18. maj 2004 - 17:17 Der er 12 kommentarer og
1 løsning

lidt blandede spørgsmål

jeg har to spørgsmål:

Har denne side: http://www.danishsouvenir.dk/andre%20ting/svenne182.frac.dk/test_frameset.htm



#1

som i kan se er der 3 frames og der er scrollbar i alle tre.

Nu er spørgsmålet: Kan jeg få alle 3 frames til at være sammen om éen normal scroller i venstre side, sådan så de scroller på samme tid?


#2

i kan også se at jeg har et script til linksne i venstre frame, hvor der kommer noget tekst op når man holder musen over.

koden ser sådan her ud:,


<link href="alttxt.js" rel="stylesheet" type="text/javascript">
<style type="text/css">
<!--
    .navtext {
    width:150px;
    font-family: "Verdana";
    font-size: 9px;
    color:#FFFFFF;
        border-width:2px;
        border-style:outset;
        border-color:darkgray;
        background-color:transparent;
}

-->
</style>

<script language="javascript">
var isNS = (navigator.appName == "Netscape") ? 1 : 0;
var EnableRightClick = 0;
if(isNS)
document.captureEvents(Event.MOUSEDOWN||Event.MOUSEUP);
function mischandler(){
if(EnableRightClick==1){ return true; }
else {return false; }
}
function mousehandler(e){
if(EnableRightClick==1){ return true; }
var myevent = (isNS) ? e : event;
var eventbutton = (isNS) ? myevent.which : myevent.button;
if((eventbutton==2)||(eventbutton==3)) return false;
}
function keyhandler(e) {
var myevent = (isNS) ? e : window.event;
if (myevent.keyCode==96)
EnableRightClick = 1;
return;
}
document.oncontextmenu = mischandler;
document.onkeypress = keyhandler;
document.onmousedown = mousehandler;
document.onmouseup = mousehandler;
</script>


<SCRIPT language=JavaScript1.2>

function disableselect(e){
return false
}
function reEnable(){
return true
}

document.onselectstart=new Function ("return false")

if (window.sidebar){
document.onmousedown=disableselect
document.onclick=reEnable
}
</SCRIPT>




og så følger der en *.js fil med hvor koden ser sådan her ud:

/////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
//  ALTTXT V1.2
//  BY: BRIAN GOSSELIN OF SCRIPTASYLUM.COM
//  ADDED FADING EFFECT FOR IE4+ AND NS6+ ONLY AND OPTIMIZED THE CODE A BIT.
//  SCRIPT FEATURED ON DYNAMIC DRIVE (http://www.dynamicdrive.com)
//  Modifed by DD for doctype bug on Nov 13th, 2003


var dofade=true;    // ENABLES FADE-IN EFFECT FOR IE4+ AND NS6 ONLY
var center=false;    // CENTERS THE BOX UNER THE MOUSE, OTHERWISE DISPLAYS BOX TO THE RIGHT OF THE MOUSE
var centertext=false; // CENTERS THE TEXT INSIDE THE BOX. YOU CAN'T SIMPLY DO THIS VIA STYLE BECAUSE OF NS4.
                    // OTHERWISE, TEXT IS LEFT-JUSTIFIED.


////////////////////////////// NO NEED TO EDIT BEYOND THIS POINT //////////////////////////////////////

function ietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

var NS4 = (navigator.appName.indexOf("Netscape")>=0 && !document.getElementById)? true : false;
var IE4 = (document.all && !document.getElementById)? true : false;
var IE5 = (document.getElementById && document.all)? true : false;
var NS6 = (document.getElementById && navigator.appName.indexOf("Netscape")>=0 )? true: false;
var W3C = (document.getElementById)? true : false;
var w_y, w_x, navtxt, boxheight, boxwidth;
var ishover=false;
var isloaded=false;
var ieop=0;
var op_id=0;

function getwindowdims(){
w_y=(NS4||NS6||window.opera)? window.innerHeight : (IE5||IE4)? document.body.clientHeight : 0;
w_x=(NS4||NS6||window.opera)? window.innerWidth : (IE5||IE4)? document.body.clientWidth : 0;
}

function getboxwidth(){
if(NS4)boxwidth=(navtxt.document.width)? navtxt.document.width : navtxt.clip.width;
if(IE5||IE4)boxwidth=(navtxt.style.pixelWidth)? navtxt.style.pixelWidth : navtxt.offsetWidth;
if(NS6)boxwidth=(navtxt.style.width)? parseInt(navtxt.style.width) : parseInt(navtxt.offsetWidth);
}

function getboxheight(){
if(NS4)boxheight=(navtxt.document.height)? navtxt.document.height : navtxt.clip.height;
if(IE4||IE5)boxheight=(navtxt.style.pixelHeight)? navtxt.style.pixelHeight : navtxt.offsetHeight;
if(NS6)boxheight=parseInt(navtxt.offsetHeight);

}

function movenavtxt(x,y){
if(NS4)navtxt.moveTo(x,y);
if(W3C||IE4){
navtxt.style.left=x+'px';
navtxt.style.top=y+'px';
}}

function getpagescrolly(){
if(NS4||NS6)return window.pageYOffset;
if(IE5||IE4)return ietruebody().scrollTop;
}

function getpagescrollx(){
if(NS4||NS6)return window.pageXOffset;
if(IE5||IE4)return ietruebody().scrollLeft;
}

function writeindiv(text){
if(NS4){
navtxt.document.open();
navtxt.document.write(text);
navtxt.document.close();
}
if(W3C||IE4)navtxt.innerHTML=text;
}

//**** END UTILITY FUNCTIONS ****//

function writetxt(text){
if(isloaded){
if(text!=0){
ishover=true;
if(NS4)text='<div class="navtext">'+((centertext)?'<center>':'')+text+((centertext)?'</center>':'')+'</div>';
writeindiv(text);
getboxheight();
if((W3C || IE4) && dofade){
ieop=0;
incropacity();
}}else{
if(NS4)navtxt.visibility="hide";
if(IE4||W3C){
if(dofade)clearTimeout(op_id);
navtxt.style.visibility="hidden";
}
writeindiv('');
ishover=false;
}}}

function incropacity(){
if(ieop<=100){
ieop+=7;
if(IE4 || IE5)navtxt.style.filter="alpha(opacity="+ieop+")";
if(NS6)navtxt.style.MozOpacity=ieop/100;
op_id=setTimeout('incropacity()', 50);
}}

function moveobj(evt){
if(isloaded && ishover){
margin=(IE4||IE5)? 1 : 23;
if(NS6)if(document.height+27-window.innerHeight<0)margin=15;
if(NS4)if(document.height-window.innerHeight<0)margin=10;
//mx=(NS4||NS6)? evt.pageX : (IE5||IE4)? event.clientX : 0;
//my=(NS4||NS6)? evt.pageY : (IE5||IE4)? event.clientY : 0;
if (NS4){
mx=evt.pageX
my=evt.pageY
}
else if (NS6){
mx=evt.clientX
my=evt.clientY
}
else if (IE5){
mx=event.clientX
my=event.clientY
}
else if (IE4){
mx=0
my=0
}

if(NS4){
mx-=getpagescrollx();
my-=getpagescrolly();
}
xoff=(center)? mx-boxwidth/2 : mx+5;
yoff=(my+boxheight+30-getpagescrolly()+margin>=w_y)? -15-boxheight: 30;
movenavtxt( Math.min(w_x-boxwidth-margin , Math.max(2,xoff))+getpagescrollx() , my+yoff+getpagescrolly());
if(NS4)navtxt.visibility="show";
if(W3C||IE4)navtxt.style.visibility="visible";
}}

if(NS4)document.captureEvents(Event.MOUSEMOVE);
document.onmousemove=moveobj;
window.onload=function(){
  navtxt=(NS4)? document.layers['navtxt'] : (IE4)? document.all['navtxt'] : (W3C)? document.getElementById('navtxt') : null;
  getboxwidth();
  getboxheight();
  getwindowdims();
  isloaded=true;
  if((W3C || IE4) && centertext)navtxt.style.textAlign="center";
  if(W3C)navtxt.style.padding='4px';
  if(IE4 || IE5 && dofade)navtxt.style.filter="alpha(opacity=0)";
  }
window.onresize=getwindowdims;




Linkkoderne  ser sådan ud:

<a href="http://www.armsved.dk" target="_blank" onmouseover="writetxt('Danmarks største portal for ægte drengerøve')" onmouseout="writetxt(0)">Armsved</a>


ville det være muligt at få popup boksen til at komme frem direkte ud fra teksten?. I stedet for at den er lidt under.

Er ikke så skrap til at rette i scripts.


PÅ forhånd tak
Avatar billede svenne182 Nybegynder
18. maj 2004 - 17:26 #1
spørgsmål #2
  I
  I
  v

sådan her skulle det meget gerne se ud: http://www.filedeposit.com/uploads/18052004/links_beskrivelse.GIF
Avatar billede cdc Novice
18. maj 2004 - 17:38 #2
spm. 1 = nej
spm. 2 = vil mene du skal bruge overLib i stedet: http://www.bosrup.com/web/overlib/
Avatar billede svenne182 Nybegynder
18. maj 2004 - 17:44 #3
spørgsmål 1 -> jeg synes bare at ha læst et lignende spørgsmål herinde og der var også et svart hvor der blev beskrevet hvordan man gjorde, men kan ikke finde det
Avatar billede svenne182 Nybegynder
18. maj 2004 - 18:05 #4
jeg har nu prøvet med overlib, men det virker ikke, og jeg har læst documentation'en

koden ser således ud:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>

<script type="text/javascript" src="overlib.js"></script>
<script type="text/javascript" src="overlib_anchor.js"></script>
<script type="text/javascript" src="overlib_crossframe.js"></script>
<script type="text/javascript" src="overlib_cssstyle.js"></script>
<script type="text/javascript" src="overlib_exclusive.js"></script>
<script type="text/javascript" src="overlib_followscroll.js"></script>
<script type="text/javascript" src="overlib_hideform.js"></script>
<script type="text/javascript" src="overlib_shadow.js"></script>

<link href="overlib.js" rel="stylesheet" type="text/javascript">
<link href="overlib_anchor.js" rel="stylesheet" type="text/javascript">
<link href="overlib_crossframe.js" rel="stylesheet" type="text/javascript">
<link href="overlib_cssstyle.js" rel="stylesheet" type="text/javascript">
<link href="overlib_exclusive.js" rel="stylesheet" type="text/javascript">
<link href="overlib_followscroll.js" rel="stylesheet" type="text/javascript">
<link href="overlib_hideform.js" rel="stylesheet" type="text/javascript">
<link href="overlib_shadow.js" rel="stylesheet" type="text/javascript">

</head>

<body><div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>

<a href="java script:void(0);" onmouseover="return overlib('This is an ordinary
  popup.');" onmouseout="return nd();">here</a>

</body>
</html>
Avatar billede svenne182 Nybegynder
18. maj 2004 - 18:06 #5
det burde da heller ikke være så svært at få det script jeg først kom med, til at flytte sig til den ønskede position. Det er vel bare noget med x og y
Avatar billede cdc Novice
18. maj 2004 - 18:13 #6
kender det ikke, men har du prøvet at rette i disse:

function moveobj(evt){
if(isloaded && ishover){
margin=(IE4||IE5)? 1 : 23;
if(NS6)if(document.height+27-window.innerHeight<0)margin=15;
if(NS4)if(document.height-window.innerHeight<0)margin=10;
Avatar billede svenne182 Nybegynder
18. maj 2004 - 18:19 #7
ja netop!.. har lige siddet og rettet i lige præcis det stykke, men jeg har kun fået det til at være til venstre for, men boksen er stadig "under" teksten. Altså den står ikke på linjen med link-teksten:

function moveobj(evt){
if(isloaded && ishover){
margin=(IE4||IE5)? 100 : 23;
if(NS6)if(document.height+27-window.innerHeight<0)margin=15;
if(NS4)if(document.height-window.innerHeight<0)margin=10;


har prøvet at rette i der hvor der står 23, men uden resultat
Avatar billede svenne182 Nybegynder
18. maj 2004 - 18:20 #8
i kan også se at ved "Soundcheck" skifter boksen position om den skal være ovenonver eller nedenunder teksten. Kan man gøre sådan så den kun fremkommer ovenover teksten ligesom i de øverste links
Avatar billede svenne182 Nybegynder
18. maj 2004 - 18:24 #9
det er jo faktisk kun margin'en fra selve siden jeg har ændret ved at skrive 100 istedet for 1, og ikke "i forehold til teksten"
Avatar billede cdc Novice
18. maj 2004 - 18:26 #10
nu ved jeg ikke hvor du vil have den men den kan ikke gå ud over en anden frame og derfor vil den være skjult på noget af det eller forsvinde.
Avatar billede svenne182 Nybegynder
18. maj 2004 - 18:34 #11
jeg vil slette den yderste frame og indsætte linksne på siderne i mainframe, sådan så de ikke forsvinder i en anden frame. Hvis der altså ikke er mulighed for at kunne gøre den ene frame gennemsigtig på en måde, så boksene ville vises indover den anden frame
Avatar billede svenne182 Nybegynder
18. maj 2004 - 18:52 #12
spørgsmålene står stadig ved deres magt. Jeg er ikke rigtig kommet videre ud fra de kommentarer der kommet (men tak for jeres tid alligvel :D)
Avatar billede svenne182 Nybegynder
09. oktober 2004 - 02:26 #13
lukket pga. manglende svar og at emnet ikke længere er aktuelt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester