Я не уверен, как отладить эту конкретную проблему в настоящее время.Отладка 404 загрузки страницы ошибок в Fancybox из сценария
Если вы посмотрите на это category page, например, и нажмите кнопку «Купить» на верхнем устройстве, появится всплывающее окно, нажмите кнопку «Перейти к кассе» и появится мода Fancybox, на короткое время отображающая ошибку 404 - кто-то любезно использовать их инструменты для браузера dev и указать, почему он загружает страницу ошибок 404 в модуле Fancybox, пожалуйста?
Сценарий, который контролирует это стало немного беспорядок, но я представил его ниже для справки ...
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function(){
jQuery('.fancybox').fancybox(
{
hideOnContentClick : true,
width: 382,
autoDimensions: true,
type : 'iframe',
showTitle: false,
scrolling: 'no',
onComplete: function(){
jQuery('#fancybox-frame').load(function() { // wait for frame to load and then gets it's height
jQuery('.fancybox').height(jQuery(this).contents().find('body').height()+30);
jQuery.fancybox.resize();
});
}
}
);
});
function showOptions(id){
jQuery('#fancybox'+id).trigger('click'); //show the custom options on click if they exist
}
function setAjaxData(data,iframe){
if(data.status == 'ERROR'){
alert(data.message); //show error message if nothing to update
}else{
if(jQuery('.block-cart')){
jQuery('.block-cart').replaceWith(data.sidebar); //otherwise update the cart in the sidebar block
}
if(jQuery('.header .links')){
jQuery('.header .links').replaceWith(data.toplink); //otherwise update the cart in the header block
}
jQuery.fancybox.close();
}
}
function setLocationAjax(url,id){
url += 'isAjax/1';
url = url.replace("checkout/cart","ajax/index");
jQuery('#ajax_loader'+id).show();
try {
jQuery.ajax({
url : url,
dataType : 'json',
success : function(data) {
jQuery('#ajax_loader'+id).hide(); //if success, hide #ajax_loader
jQuery('.popup-text').html(data.message); //if success, show .popup-text that says product is added to cart
jQuery('.fancy-popupbox').show(); //if success, show .fancy-popupbox content
//jQuery.fancybox.open('.fancy-popupbox');
setAjaxData(data,false);
}
});
} catch (e) {
}
}
</script>
Пожалуйста, дайте мне знать, если я могу предоставить некоторую дополнительную информацию по этому вопросу.
Не можете ли вы использовать инструменты dev? – tjons
Не отлаживать javascript/jquery no :( – zigojacko
Ну, я сделал это для вас. См. Мой ответ! :) – tjons