Avatar billede nomisweb Nybegynder
04. marts 2007 - 16:03 Der er 5 kommentarer og
1 løsning

visning i ny IE?

Hej,
Jeg har lavet en side med nogle forskellige javascript elementer - scroll knapper og drop down menu. Scroll knapperne "hænger" sammen med teksten, eller er det omvendt... anyway så kan man ikke se teksten i den nye IE. Jeg har tjekket at javascript er sat til og der er ikke nogen problemer med at se teksten i nogen anden browser. Hvad er problemet tænker jeg så??
Tak for hjælpen, s
Avatar billede MSR Juniormester
04. marts 2007 - 18:04 #1
IE er  problemet :D
smid pisset af pokkers til...

Det er ret svært at gætte hvad problemer er når du ikke viser hvor det går galt?
Prøv at poste koden omkring knapperne så kan det være der er nogen der kan tricks til at fixe det?
Avatar billede nomisweb Nybegynder
04. marts 2007 - 18:20 #2
Det mærkelige er at det virker super fint i de gamle versioner af IE...nå men det er nok rigtigt at det hjælper lidt mere at poste koden! Det er en jeg har fundet på nettet da jeg nok er mere til php en javascript, men den ser sådan ud:
(Måske er fejlen netop i denne første browser check?)

function lib_bwcheck(){ //Browsercheck (needed)
    this.ver=navigator.appVersion
    this.agent=navigator.userAgent
    this.dom=document.getElementById?1:0
    this.opera5=this.agent.indexOf("Opera 5")>-1
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
    this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
    this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
    this.ie=this.ie4||this.ie5||this.ie6
    this.mac=this.agent.indexOf("Mac")>-1
    this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
    this.ns4=(document.layers && !this.dom)?1:0;
    this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
    return this
}
var bw=new lib_bwcheck()

//If you want it to move faster you can set this lower, it's the timeout:
var speed = 30

//Sets variables to keep track of what's happening
var loop, timer

//Object constructor
function makeObj(obj,nest){
    nest=(!nest) ? "":'document.'+nest+'.'
    this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
      this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
    this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight
    this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight
    this.up=goUp;this.down=goDown;
    this.moveIt=moveIt; this.x=0; this.y=0;
    this.obj = obj + "Object"
    eval(this.obj + "=this")
    return this
}

// A unit of measure that will be added when setting the position of a layer.
var px = bw.ns4||window.opera?"":"px";

function moveIt(x,y){
    this.x = x
    this.y = y
    this.css.left = this.x+px
    this.css.top = this.y+px
}

//Makes the object go up
function goDown(move){
    if (this.y>-this.scrollHeight+oCont.clipHeight){
        this.moveIt(0,this.y-move)
            if (loop) setTimeout(this.obj+".down("+move+")",speed)
    }
}
//Makes the object go down
function goUp(move){
    if (this.y<0){
        this.moveIt(0,this.y-move)
        if (loop) setTimeout(this.obj+".up("+move+")",speed)
    }
}

//Calls the scrolling functions. Also checks whether the page is loaded or not.
function scroll(speed){
    if (scrolltextLoaded){
        loop = true;
        if (speed>0) oScroll.down(speed)
        else oScroll.up(speed)
    }
}

//Stops the scrolling (called on mouseout)
function noScroll(){
    loop = false
    if (timer) clearTimeout(timer)
}
html;
echo "//Makes the object\nvar scrolltextLoaded = false\nfunction scrolltextInit(){\n    oCont = new makeObj('tekst_".$row[farve]."')\n    oScroll = new makeObj('divText','tekst_".$row[farve]."')\n    oScroll.moveIt(0,0)\n oCont.css.visibility = \"visible\"\n    scrolltextLoaded = true\n}\n";

echo <<<html
//Call the init on page load if the browser is ok...
if (bw.bw) onload = scrolltextInit
html;
Avatar billede roenving Novice
04. marts 2007 - 18:27 #3
Sikkert, fordi den kender jo ikke IE7:

function lib_bwcheck(){ //Browsercheck (needed)
    this.ver=navigator.appVersion
    this.agent=navigator.userAgent
    this.dom=document.getElementById?1:0
    this.opera5=this.agent.indexOf("Opera ")>-1 && this.ver >= 5;
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
    this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
    this.ie7=(this.ver.indexOf("MSIE 7")>-1 && this.dom && !this.opera5)?1:0;
    this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
    this.ie=this.ie4||this.ie5||this.ie6||this.ie7;
    this.mac=this.agent.indexOf("Mac")>-1
    this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
    this.ns4=(document.layers && !this.dom)?1:0;
    this.bw=(this.ie7 || this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
    return this
}
var bw=new lib_bwcheck()
Avatar billede nomisweb Nybegynder
05. marts 2007 - 11:21 #4
Det var jo lige det der skulle til! Tak :-)
Lægger du et svar?
S
Avatar billede roenving Novice
05. marts 2007 - 15:35 #5
Velbekomme '-)
Avatar billede roenving Novice
05. marts 2007 - 17:08 #6
-- og tak for point ;~}
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

IT-JOB