keyup(), change(), проблема с событиями в IE8 (загрузка изображения работает только один раз)
Я нахожусь перед проблемой на IE8. (не проверено на IE9)
это моя маленькая программа с некоторыми HTML + Jquery
картину стоимостью в тысячу слов вы можете посмотреть здесь http://twixtop.lescigales.org/color/
мне нужно пять папок A B P C D
фактически, когда вы выбираете "МОДЕЛЬ", значения по умолчанию отображаются в форме ввода текста на левой боковой панели "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, например:
- выберите разные цвета на базовой панели (белый, серый, красный и один синий)
- назад уже выбран цвет (белый или серый)
- IE8 не заряжает должным образом изображение
я думаю есть проблема с кешем?? образ памяти? я не знаю... Я пытаюсь поиграть с функциями.live(), .bind(), .blur(), .change(), .. никак
Уже выбранная кнопка не перезагружает изображение во второй раз, если оно уже было выбрано заранее...
Я начал тянуть мои волосы. ф..... г интернет-проводник...
я пытаюсь разные вещи эмулировать ie8 как IE7... // нет результата
Все работает на CHROME, FIREFOX, IE7, OPERA, SAFARI...
РЕДАКТИРОВАТЬ 20 января 2011
это мой первый пост здесь.. извините за мой плохой английский...
есть JSBIN для людей, которые хотят мне помочь.jsbin.com/ihiyi4/3
- Выберите модель (DIAMON или JADE), чтобы загрузить изображения по умолчанию
- Выберите разные цвета на базовой панели (белый, серый, красный и один синий)
- назад уже выбран цвет (белый или серый)
- IE8 не заряжает должным образом изображение
Я не понимаю, зачем пользователю IE8 нужно очищать кеш, чтобы снова загрузить образ