Ошибка отображения IE в файле prototype.js №. 1597 - PullRequest
0 голосов
/ 31 января 2010

я использую lightwindow с использованием prototype.js, ошибка отображения IE при появлении lighwindow, я пишу строки, где возникает проблема, пожалуйста, подскажите, где находится ошибка и как ее исправить

setStyle: function(element, styles, camelized) {
    element = $(element);
    var elementStyle = element.style;

    for (var property in styles)
      if (property == 'opacity') element.setOpacity(styles[property])
      else
        elementStyle[(property == 'float' || property == 'cssFloat') ? // error show in this line
          (elementStyle.styleFloat === undefined ? 'cssFloat' : 'styleFloat') :
          (camelized ? property : property.camelize())] = styles[property];

    return element;
  },

Ответы [ 2 ]

4 голосов
/ 31 января 2010

Код prototype.js, скорее всего, в порядке, это, вероятно, вызов setStyle() для элемента, который не существует.

Если вы используете Internet Explorer 8, нажмите F12 , чтобы открыть инструменты разработчика. Перейдите на вкладку «скрипт», а затем найдите трассировку стека. Трассировка стека покажет вам точку, в которой был сделан вызывающий вызов setStyle() . Это может уже дать вам подсказку, что неправильно; если нет, вернитесь с этой информацией.

Вы можете сделать то же самое с Firefox и Firebug .

0 голосов
/ 04 апреля 2011
 for (var property in styles)
      if (property == 'opacity') element.setOpacity(styles[property]);
      else /*@cc_on @*/
/*@if(@_jscript_version >= 5)
try{
@end @*/
        elementStyle[(property == 'float' || property == 'cssFloat') ?
          (Object.isUndefined(elementStyle.styleFloat) ? 'cssFloat' : 'styleFloat') :
            property] = styles[property];/*@cc_on @*/
/*@if(@_jscript_version >= 5)
} catch(e){};
@end @*/
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...