У меня возникли трудности с управлением страницей администрирования, где я постоянно получаю 'Aw Snap' в Chrome.
У меня есть страница администрирования товаров, где вы можете добавлять новые продукты на сайт.
Если пользователь выбирает «футболку» в качестве типа продукта, появляются некоторые новые параметры. А именно размер и цвет.
Размер - это просто поле множественного выбора, но нажатие на «Добавить цвет» инициализирует блок теней.
Теневой ящик позволяет пользователю ввести имя для цвета и выбрать шестнадцатеричный цвет (с помощью плагина Wheel Color Picker ) и загрузить репрезентативное изображение (с помощью Uploadify ). При отправке сценарий Uploadify загружает файл, а затем по завершении сценарий отправляет другую информацию о цвете в базу данных через JQuery AJAX.
Сценарий кнопки отправки:
function add_colour_submit(){
$('#admin-add-colour-response').text('Processing...').fadeIn(1000);
$('#admin-add-colour-image').uploadifySettings('scriptData', {
'title': $('#admin-add-colour-title').val(),
'hex': $('#admin-add-colour-hex').val(),
'gender': $('#admin-add-colour-gender').val()
});
$('#admin-add-colour-image').uploadifyUpload();
}
Выгрузить «Завершено»:
'onComplete': function (event, ID, fileObj, response, data) {
$("#admin-add-colour-response").fadeTo(200,0.1,function(){
$("#admin-add-colour-response").html('Complete.').fadeTo(900,1,
function()
{
var responseArray = response.split(',');
var id = responseArray[0];
var title = responseArray[1];
var hex = responseArray[2];
var gender = responseArray[3];
parent.get_colour(id, title, hex, gender);
});
});
}
Когда операция AJAX завершена, в сообщении обратной связи отображается «Complete».
По истечении этого времени код JQuery программно закрывает shadowbox, и на родительской странице создается небольшой div для представления представленного цвета.
Потенциал для добавления нескольких с использованием этого метода.
Функция получения цвета:
function get_colour(id, title, hex, gender){
$('#sb-nav-close').click(); //trigger shadowbox close
//create colour object div
var colourObject = '<div class="colourObject"><div class="colourPreview" style="background:#'+hex+'"></div><div class="colourInfo"> '+title+' / '+gender+'</div><div class="colourRemove"><a href="#" onclick="remove_colour('+id+')">x</a></div</div>'
var currentList = $('#colour-list').html();
$('#colour-list').html(currentList+colourObject);
//re-initialise any shadowbox links in the page
Shadowbox.init({
skipSetup: false
});
Shadowbox.setup();
}
Моя проблема в том, что во время вышеупомянутой функции, возможно, во время закрытия shadowbox, я получаю Aw Snap в Chrome. Снимки экрана с вышеприведенным цветовым блоком были сделаны с использованием Safari, и у меня нет никаких проблем.
У меня есть несколько плагинов (shadowbox, колесо выбора цвета, uploadify, jquery), поэтому их столкновение может вызвать ошибку?
Update.
Мне только что удалось протестировать это в еще нескольких браузерах, и это определенно проблема, связанная только с Chrome.