keyup (), change (), проблема с событиями в IE8 (загрузка изображения работает только один раз) - PullRequest
1 голос
/ 18 января 2011

перед проблемой на IE8.(не тестировался на IE9)

это моя маленькая программа с HTML + Jquery

картинка стоимостью в тысячу слов, которую вы можете посмотреть здесь http://twixtop.lescigales.org/color/

iНужно пять папок ABPCD

на самом деле, когда вы выбираете "МОДЕЛЬ", значения по умолчанию отображаются в форме ввода текста на левой боковой панели "W.png, W.png, W.png, X.png X.png "

    // Settings
   var settings = {
    "model":  "DIAM",
    "baseColor": "W",
    "sideColor": "W",
    "ambientColor": "W",
    "baseLight": "X",
    "centralColor": "X",
    "rendureference": "WXY3"
   };

   var options  = {
    "imageC": "images/[model]/C/[baseColor].png",
    "imageD": "images/[model]/D/[sideColor].png",
    "imageA": "images/[model]/A/[ambientColor].png",
    "imageB": "images/[model]/B/[baseLight].png",
    "imageP": "images/[model]/P/[centralColor].png",
    "renduZ": "WXY3-[model]-[ambientColor]-[baseLight]-[centralColor]-[baseColor][sideColor]-TG",
    "ValueModel": "[model]"


   }
   $('#customizer [type="radio"]').bind('click', function() {
   var el = $(this);
    settings[el.attr('name')] = el.attr('value');
    settingDigest();
   });



   // Show Var
   function settingDigest()
   {
    var imgC = options.imageC;
    var imgD = options.imageD;
    var imgA = options.imageA;
    var imgB = options.imageB;
    var imgP = options.imageP;
    var renZ = options.renduZ;
    var valueM = options.ValueModel;

    for(i in settings) {
     imgC = imgC.replace('['+i+']', settings[i]);
     imgD = imgD.replace('['+i+']', settings[i]);
     imgA = imgA.replace('['+i+']', settings[i]);
     imgB = imgB.replace('['+i+']', settings[i]);
     imgP = imgP.replace('['+i+']', settings[i]);
     renZ = renZ.replace('['+i+']', settings[i]);
     valueM = valueM.replace('['+i+']', settings[i]);
    }

// left sidebar input text keyup
    $('#avatar_C').val(imgC).keyup();
   $('#avatar_D').val(imgD).keyup();
   $('#avatar_A').val(imgA).keyup();
   $('#avatar_B').val(imgB).keyup();
   $('#avatar_P').val(imgP).keyup();
   $('#avatar_Z').val(renZ).keyup();
   $('#avatar_JADE').val(valueM).keyup();

   }

Проблема возникает при многократном выборе цвета только в IE8, например:

  1. выбор разных цветов на базовой панели (белый, серый, красный и одинсиний)
  2. назад уже выбран цвет (белый или серый)
  3. IE8 не заряжается должным образом image

я думаю, что естьпроблема кеша ??образ памяти?я не знаю ... Я пытаюсь поиграть с функциями .live (), .bind (), .blur (), .change (), .. никоим образом

уже выбранная кнопка делаетне перезагружать изображение во второй раз, если оно уже было выбрано заранее ...

Я начал дергать себя за волосы.f ..... g internet explorer ...

я пробую разные вещи, эмулирующие ie8 как IE7 ... // безрезультатно

Все работает на CHROME, FIREFOX, IE7,ОПЕРА, САФАРИ потрясающе ...

РЕДАКТИРОВАТЬ 20 января 2011

это мой первый пост здесь ... извините за мой плохой английский ...

есть JSBIN для людей, которые хотят мне помочь. jsbin.com / ihiyi4 / 3

  1. Выберите модель (DIAMON или JADE) для этой загрузки изображений по умолчанию
  2. Выберите разные цвета на базовой панели (белый,серый, красный и один синий)
  3. назад уже выбран цвет (белый или серый)
  4. IE8 не заряжается должным образом image

Я не понимаю, почему IE8пользователю необходимо очистить кэш, чтобы снова загрузить изображение

...