.append () не работает в IE7 - PullRequest
       3

.append () не работает в IE7

0 голосов
/ 02 августа 2011

Этот скрипт работает во всех браузерах, кроме IE7 ..

Обзор: я получил страницу продуктов (li.prod). У каждого продукта есть изображение (li.prod div.mainpic img). Это изображение имеет атрибут title, который я использую, чтобы добавить класс с тем же именем в добавляемый. Затем все бренды отображаются автоматически с помощью css.

$('li.prod .mainpic').each (function() {
  var jThis = $(this);
  var mainImages = jThis.find('img');

  jThis.prepend('<div class="prod-logo"></div>');

  var targList = jThis.find('div.prod-logo');

  mainImages.each(function() {
    newClass = $(this).attr('title');
    targList.addClass (newClass);
  });
});

Кто-нибудь знает решение, которое будет работать для всех браузеров?

Ответы [ 2 ]

0 голосов
/ 03 августа 2011

Проблема была не в коде. Мне просто нужно было объявить переменные.

var $jThis = null; 
var $mainImages = null; 
var $newClass = null;
var $targList = null; 

$('li.prod .mainpic').each(function () {
var jThis = $(this);
var mainImages = jThis.find('img');

jThis.append('<div class="prod-logo"></div>');

var targList = jThis.find('div.prod-logo');

mainImages.each(function() {
    newClass = $(this).attr('title');
    targList.addClass(newClass);
});
});
0 голосов
/ 02 августа 2011

Я запустил эту скрипку в эмуляторе IE 7 тестера IE, и у меня не было проблем.Попробуйте и дайте мне знать, работает ли он у вас.

Версия с предприставлением:

http://jsfiddle.net/jensbits/aBcVX/

Версия с дополнением:

http://jsfiddle.net/jensbits/aBcVX/2/

Версия с appendTo:

http://jsfiddle.net/jensbits/aBcVX/3/

Версия с после:

http://jsfiddle.net/jensbits/aBcVX/4/

...