
24/05/2007, 09:34
|
| | Fecha de Ingreso: abril-2007
Mensajes: 6
Antigüedad: 17 años, 10 meses Puntos: 0 | |
Re: Problema JSP y Explorer 7.0 Hola gracias por tu ayuda, me puse a revisar la libreria y ahi solucione el problema
Código:
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.opera7=this.agent.indexOf("Opera 7")>-1
this.ie5=(this.ver.indexOf("MSIE 7")>-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.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(document.layers){ //NS4 resize fix...
scrX= innerWidth; scrY= innerHeight;
onresize= function(){if(scrX!= innerWidth || scrY!= innerHeight){history.go(0)} }
}
if(navigator.userAgent.indexOf('Opera 5')>-1 && document.getElementById){ //Opera 5 resize fix.
scrX= innerWidth; scrY= innerHeight;
document.onmousemove= function(){
if(scrX<innerWidth-10 || scrY<innerHeight-10 || scrX>innerWidth+10 || scrY>innerHeight+10){
scrX = innerWidth;
scrY = innerHeight;
foldInit();
}
};
}
mainmenus=15 //How many main menus do you have?
//How many submenus do you have beneath each main level.
submenus=new Array(15,15,15,15,15,15,15,15,15,15,15,15,15,15,15)
//In this example I have 3 submenus in the first top menu,
//3, in the second, 2 submenus in the third top menu and 3 in the forth.
//It's really important that these numbers are correct.
pxbetweenmain = 0 //How much space should there be between the main menus
pxbetweensub = 0 //How much space should there be between the sub menus
mainstayfolded = false //Should the main menus stay folded?
substayfolded = false //Should the sub menus stay folded? Play with these 2 variables.
/************************************************************************************
Making cross-browser objects
************************************************************************************/
function makeMenu(obj,nest){
this.nameo=obj;
nest=(!nest) ? "":'document.'+nest+'.';
if ((document.getElementById && document.getElementById(obj)) ||
(document.all && document.all[obj])) {
this.css= bw.dom? document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+"document.layers." +obj):0;
this.elm= bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
this.ref= bw.dom || bw.ie4? document:bw.ns4?eval(nest+"document.layers." +obj+".document"):0;
this.x= bw.ns4?this.css.left:bw.opera5?this.css.pixelLeft:this.elm.offsetLeft;
this.y= bw.ns4?this.css.top:bw.opera5?this.css.pixelTop:this.elm.offsetTop;
this.height= bw.ns4?this.ref.height:bw.opera5?this.css.pixelHeight:this.elm.offsetHeight;
this.hideIt= b_hideIt;
this.showIt= b_showIt;
this.moveIt= b_moveIt;
this.status= 0;
}
else {
this.x=0;
this.y=0;
this.height=0;
this.hideIt= n_hideIt;
this.showIt= n_showIt;
this.moveIt= n_moveIt;
this.status= 9;
}
return this;
}
// A unit of measure that will be added when setting the position of a layer.
//var px = bw.ns4||window.opera?"":"px";
var px = bw.ns4?"":"px";
function b_showIt(){this.css.visibility="visible"; this.status=1}
function b_hideIt(){this.css.visibility="hidden"; this.status=0}
function b_moveIt(x,y){this.x=x; this.y=y; /*this.css.left=this.x+px;*/ this.css.top=this.y+px;}
// Funciones div vacios
function n_showIt(){}
function n_hideIt(){}
function n_moveIt(x,y){}
/************************************************************************************
Initiating the page and making the menu
************************************************************************************/
function foldInit(){
//Fixing the browsercheck for opera... this can be removed if the browsercheck has been updated!!
bw.opera5 = (navigator.userAgent.indexOf("Opera 5")>-1 && document.getElementById)?true:false
if (bw.opera5) bw.ns6 = 0
//Creating the foldoutmenu
oFold = new Array();
y = 0;
for (var i=0; i<mainmenus; i++){
oFold[i] = new makeMenu('divFold'+i,'divFoldCont');
oFold[i].moveIt(0,y);
oFold[i].size = oFold[i].height;
y += oFold[i].height+pxbetweenmain;
if (bw.ns4) oFold[i].css.clip.bottom = 500;
oFold[i].sub = new Array();
oFold[i].subs = top_subs;
suby = oFold[i].height+pxbetweensub;
for (var j=0; j<submenus[i]; j++){
oFold[i].sub[j] = new makeMenu('divFoldSub'+i+'_'+j,'divFoldCont.document.divFold'+i);
oFold[i].sub[j].sub = new makeMenu('divFoldSub'+i+'_'+j+'_0','divFoldCont.document.divFold'+i+'.document.divFoldSub'+i+'_'+j);
oFold[i].sub[j].hideIt();
oFold[i].sub[j].sub.hideIt();
oFold[i].sub[j].moveIt(10,suby);
suby += oFold[i].sub[j].height+pxbetweensub;
}
}
oFoldCont = new makeMenu('divFoldCont');
if (bw.ns4) oFoldCont.css.clip.bottom = 800;
oFoldCont.showIt(); //Showing the menu when the menu have been "created"
}
/************************************************************************************
Object function to the top of the menus.
************************************************************************************/
function top_subs(show, num){
for (var j=0; j<this.sub.length; j++){
if (show){
this.sub[j].showIt()
// if (foldImg) this.ref["imgFold"+num].src = foldoutImg.src
if (substayfolded){if(this.sub[j].sub.status) this.sub[j].sub.showIt()
}else{
// if (foldImg) this.sub[j].ref["imgFold"+num+"Sub"+j].src = foldsubinImg.src
this.sub[j].sub.hideIt()
}
}else{
this.sub[j].hideIt()
// if (foldImg) this.ref["imgFold"+num].src = foldinImg.src
if (!substayfolded) this.sub[j].sub.hideIt()
else if (substayfolded) this.sub[j].sub.css.visibility="hidden"
}
}
}
/************************************************************************************
Checking height of the menus, and moves them to the correct position.
************************************************************************************/
function checkheight(org){
if(mainstayfolded) istart=org; else istart=0
for(i=istart;i<oFold.length;i++){
oFold[i].size=oFold[i].height
for(j=0;j<oFold[i].sub.length;j++){
oFold[i].sub[j].size=oFold[i].sub[j].height+pxbetweensub
if(oFold[i].sub[j].status){
oFold[i].size+=oFold[i].sub[j].size
if(oFold[i].sub[j].sub.status){
oFold[i].size+=oFold[i].sub[j].sub.height+pxbetweensub
oFold[i].sub[j].size+=oFold[i].sub[j].sub.height+pxbetweensub
}
}
if(j!=0) oFold[i].sub[j].moveIt(10,oFold[i].sub[j-1].y+oFold[i].sub[j-1].size)
}
if(i!=0) oFold[i].moveIt(0,oFold[i-1].y+oFold[i-1].size+pxbetweenmain)
// if(i!=0) oFold[i].moveIt(0,oFold[i-1].y+oFold[i-1].size)
}
}
/************************************************************************************
Fold in and out the submenus.
************************************************************************************/
function subfoldmenu(main,sub){
// parent.show.location.href="about:blank";
// parent.show.location.href='/*==hahtSession.createStaticURL("blank.htm")*/';
if (!substayfolded){
for (var i=0; i<oFold[main].sub.length; i++){
if (i!=sub){
// alert("hide"+ main + "/" + sub)
oFold[main].sub[i].sub.hideIt();
// if (foldImg) oFold[main].sub[i].ref["imgFold"+main+"Sub"+i].src = foldsubinImg.src
}
}
}
if (sub >= 0) {
// alert(""+ main + "/" + sub)
if (!oFold[main].sub[sub].sub.status){
oFold[main].sub[sub].sub.showIt()
// if(foldImg) oFold[main].sub[sub].ref["imgFold"+main+"Sub"+sub].src = foldsuboutImg.src
}
else{
oFold[main].sub[sub].sub.hideIt()
// if(foldImg) oFold[main].sub[sub].ref["imgFold"+main+"Sub"+sub].src = foldsubinImg.src
}
checkheight(main)
}
else
checkheight(main)
}
/************************************************************************************
Fold in and out the mainmenus
************************************************************************************/
function foldmenu(num,tipo){
// parent.show.location.href="about:blank";
// parent.show.location.href='/*==hahtSession.createStaticURL("blank.htm")*/';
if (!mainstayfolded){
for(var i=0; i<oFold.length; i++){
if(i!=num) oFold[i].subs(0,i)
}
}
if (tipo >= 0 ) {
if (!oFold[num].sub[0].status) oFold[num].subs(1,num)
else oFold[num].subs(0,num)
checkheight(num)
}
else
checkheight(num)
}
//Initiating the menus onload, if the browser is ok.
if(bw.bw) onload = foldInit;
function statwords(message){
window.status = message;
}
antes estaba asi
Código:
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;
Ahora lo deje asi y funciona bien, hasta el momento
Código:
this.ie5=(this.ver.indexOf("MSIE 7")>-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;
Segun mi poca experiencia no funcionaba porque quizas no tenia como alternativa el explorer 7.0
Saludos y gracias por tu ayuda .... |