Extra Form
PHP PHP 7.0
CMS XpressEngine

현재 홈페이지 메인에 노출되는 3개가 충돌로 제대로 나오지 않는 것 같습니다.

1. 카메론 이미지 슬라이더

2. 레이어 팝업 애드온 (LI-NA  1.8)

3. 팝업 오프너 (XE스쿨  1.5.4.3_Borderless)

 

1, 2번 운영시에는 문제없었는데, 팝업을 2개 띄워야 해서 오늘 3번을 추가했는데요,

3번을 활성화시키면 1번이 안나오는 등 충돌로 인해 작동을 하지 않습니다.

아래는 3개 모두 활성화 시켰을 때 에러메시지구요.

 

그래서 현재는 3번을 비활성화 시켜놨습니다.

 

error.jpg

 

지금껏 나온 질답게시판을 모조리 훑어보고

적용해봤지만 해결이 되지 않네요.

조언 한 말씀 부탁드립니다.

  • profile
    애드온에 jquery불러오는 부분이 있어요.
    Context::addJsFile('./addons/popup_opener/jquery.popup_opener.1.5.4.3.js');
    그게 충돌날꺼에요.
    이거 지우세요.
    예전에는 jquery를 xe가 자체적으로 불러오지 않았었는데 언젠가부터 기본 옵션이 되서 문제가 되는 거죠.
  • profile profile
    jquery.popup_opener.1.5.4.3.js 소스인데요,
    그런 부분은 없는 것 같아서요.

    if(jQuery) jQuery.noConflict();

    jQuery(function($) {

    $.fn.xe_popup = function(options) {

    var options = $.extend({}, $.fn.xe_popup.defaults, options);

    return this.each(function() {

    var popup = $(this);
    var popupID = options.id;
    var popupCookieValue = getCookie(popupID);

    if (!popupCookieValue || popupCookieValue != "no") {

    var popupbody = $("<div></div>").addClass('popupbody');
    var popupcloser = $("<div></div>").addClass('popupcloser');
    var popupcheckbox = $("<input type='checkbox' />");
    var popup_message = msg_popup_do_not_display.replace('%d', options.exp_days).replace('%s', options.exp_days>1?'s':'');
    var popupcloserhtml = $("<span>"+popup_message+"</span>");
    var popupclosebutton = $('<button type="button"></button>');

    var elementID = options.element_id ? '#'+options.element_id : '';

    if ($(elementID).length>0) var targetBody = elementID;
    else var targetBody = document.body;

    popup.appendTo(targetBody).addClass('xe_popup_'+options.popup_style).css({'top' : options.top+"px", 'left' : options.left+"px"});
    popupbody.css({'height' : options.height+"px"});

    if(options.popup_type == 'content') {
    popupbody.html(options.content);
    popup.show("fast");
    } else if (options.popup_type == 'url') {
    popupbody.load(options.url, function(){popup.show("fast")});
    }

    if (options.link) {
    popupbody.css('cursor','pointer');
    if (options.link_type == 'true')
    popupbody.click(function(){window.open(options.link); popup.hide("fast");});
    else
    popupbody.click(function(){document.location.href=options.link;});
    }

    popupcheckbox.attr('id', popupID);
    popupclosebutton.click(function(){
    if (popupcheckbox.is(':checked')) {
    setCookie(popupID, "no", options.exp_days);
    popup.hide("fast", function(){$(this).remove();});
    } else {
    popup.hide("fast", function(){$(this).remove();});
    }
    });

    if(options.popup_style == 'border' || options.popup_checkbox != 'N') {
    popupcloser.append(popupcheckbox);
    popupcloser.append(popupcloserhtml);
    }
    popupcloser.append(popupclosebutton);
    popup.append(popupbody);
    popup.append(popupcloser);
    //popup.draggable();
    }

    function setCookie( id, value, exp_days ) {
    var todayDate = new Date();
    todayDate.setDate( parseInt(todayDate.getDate()) + parseInt(exp_days) );
    document.cookie = id + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";"
    }

    function getCookie(name) {
    var value=null, search=name+"=";
    if (document.cookie.length > 0) {
    var offset = document.cookie.indexOf(search);
    if (offset != -1) {
    offset += search.length;
    var end = document.cookie.indexOf(";", offset);
    if (end == -1) end = document.cookie.length;
    value = unescape(document.cookie.substring(offset, end));
    }
    }
    return value;
    }

    });
    };

    $.fn.xe_popup.defaults = {
    id: 'xe_popup',
    popup_type: 'content',
    content: 'No content!',
    open_type: 'inner',
    exp_days: '1',
    width: 300,
    height: 200,
    top: 0,
    left: 0,
    url: '/xe/',
    link: '',
    link_type: '',
    popup_title: 'xe_popup',
    popup_style: 'border',
    popup_checkbox: 'Y'
    };

    })(jQuery);
  • profile profile
    팝업오프너.addon.php던가?
    요 파일 안에 위에 적은 부분을 주석처리하라는 거에요~
  • profile profile

    말씀대로 주석처리하고 적용했는데 이미지 슬라이더는 잘 나오더라구요.
    하지만 팝업오프너 배너는 나오지 않더라구요.
    에러메시지 캡춰해봤습니다.

    error2.jpg

  • profile
    여기도 읽어보셨나요?
    저도 오래 고생하다가 해결했습니다.

    https://xetown.com/request/971790
  • profile profile
    네...며칠 전 읽어봤지만
    $(function () {
    요 부분을
    jQuery(function ($) {
    이미 수정되어 있는 코드더라구요...
    해결이 되지 않았습니다....
  • profile profile
    동일 이슈로 검색하다 동일한 현상이라 답변드립니다.
    얼떨결에 해결은 했는데, 아직 다른곳과 문제가 되는지 확인되지않았습니다.
    addons/popup_opener/jquery.popup_opener.1.5.4.3.js 파일에서
    최상단에 "if(jQuery) jQuery.noConflict();" 부분을 삭제하니 정상적으로 작동하고있습니다.