Совместимость Internet Explorer, нарушенная этим фрагментом javascript / jquery - PullRequest
0 голосов
/ 21 февраля 2012

Извините, если этот пост кажется ленивым, но я действительно понятия не имею, как следующий фрагмент кода нарушает Javascript на моем сайте!

$(document).ready(function(){
$('a').click(function(){
    $(this).blur();
});
$('.opcion').hover(function() {
    $(this).css('color','#FFF');
},function(){
    $(this).css('color','rgb(200,200,200)');
});
$('body ul li').each(function(){
    var tamcompleto = $(this).height() + 'px';
    $(this).hover(
        function(){
            $(this).stop().animate({height:tamcompleto},{queue:false, duration:600, easing: 'easeOutBounce'});
        },
        function(){
            $(this).stop().animate({height:'50px'},{queue:false, duration:600, easing: 'easeOutBounce'});
        }
    );
    $(this).css('height','50px');
}); 
$('.comunicate').each(function(){
    $(this).click(function(){
        var center   = 'height=436,width=465,top='+((screen.height - 436)/2)+',left='+((screen.width - 465)/2);
        var address = 'comunicate.php?fid='+$(this).attr('id');
        window.open (address,'comunicate', center); 
    });
});
$('.objeto').each( function(){
    $(this).click(function() {
        var center   = 'height=380,width=900,top='+((screen.height - 380)/2)+',left='+((screen.width - 900)/2);
        var address = $(this).attr('id');
        window.open (address,'Verarticulo', center); 
    });
    $(this).hover(function() {
        $(this).css('backgroundColor','rgb(255,122,79)');
    },function() {
        $(this).css('backgroundColor','rgb(200,200,200)');
    });
});
$('.elastica img').each(function(){
    $(this).css('width','100px');
    $(this).hover(function(){
        $(this).stop().animate({width: 200}, 150);
    },function(){
        $(this).stop().animate({width: 100}, 150);
    });
});
$('.elastica').click(function(){
     $('#imgampliada').attr('src', $(this).find('img').attr('src'));
});
$('.icon').hover(function(){
    var newwidth = $(this).attr('data-width');
    $(this).find('img').mousemove(function(e){
        var newposition = e.pageX - newwidth/2;
        $('#choice').html($(this).attr('id'));
        $('#choice').stop(false, true).animate({width: newwidth, left: newposition}, 200);
    })
}); 
$('#iconwrapper').mouseout(function(){
    $('#choice').html('');
    $('#choice').stop(false, true).animate({width: 0}, 100);
});
 });

function popup(mylink, windowname)
{
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
   href=mylink;
else
   href=mylink.href;
window.open(href, windowname, 'width=400,height=200,scrollbars=yes');
return false;
}

Кто-нибудь с большим опытом совместимости IE с javascript знает, что не так? Страница работает безупречно в FF и Chrome; но не загружает никакой JavaScript в IE. Это сводит меня с ума !!

1 Ответ

0 голосов
/ 29 марта 2012

Просто дважды проверьте, что значение, которое вы передаёте popup() для windowname, не содержит пробелов.IE не нравится, когда window.open() использует пробелы.

...