이번에 구형 레이아웃으로 리뉴얼 중 입니다

사용한 레이아웃은 https://xe1.xpressengine.com/index.php?mid=download&package_id=19765252 요거 입니다 

이 레이아웃을 적용후 다른것은 다 잘됩니다 

근대 이상하게 에디터가 비활성화 됩니다 

sssssssssssssssssssssssss.PNG

글 작성을 해도 글 등록이 안되고 아무것도 안됩니다 

 

그래서 게시물 수정을 클릭해서 봐도 작성한 글이 하나도 보이지 않습니다 

게다가 애드온 위젯 모듈 딱 기본만 두고 모조리삭제를 했지만 그래도 똑같은 현상 입니다

 

결국 레이아웃이 문제인것으로 나옵니다 다른 레이아웃으로 변경을 하니 저 에디터 문제가 사라집니다 

그럼 결국 구형 레이아웃의 어떤 코드나 함수의 충돌인것 같습니다 

 

혹시나 하는 마음에 스크립트도 모두 삭제를 하고 해봐도 같은 현상 입니다 

어딘가에 문제가 있다는건데 잘 모르겠네요 

 

현재가지 계속 알아보고 있는데 쉽지 않네요 

 

혹시 이런 문제를 겪어본 분이 계시면 정보좀 부탁 드립니다 

감사합니다

  • Lv30
    대부분 이런 문제는 스크립트충돌입니다.
    특정 레이아웃에서 문제가 되고 나머지 대부분 레이아웃에서는 괜찮다면
    문제가 되는 레이아웃에서 불러오고 있는 스크립트 중에 XE코어에서 불러와야할 공통스크립트를 불러와서 스크립트 로딩 순서를 뒤바꿔서 그런경우가 많습니다.

    관련 에디터 스크립트 문제는 굉장히 많은 질문이 올라왔으니 검색해 보시고 지금 문제가 되는 레이아웃에 작성된 코드 중 상단에 위치한 코드에서 불러오지 않아야할 스크립트가 보인다면 제거해 보세요.
  • Lv30 ?

    맞습니다 안그래도 저도 스크립트를 삭제도 했는데 지금 다시 하나씩 전체적으로 삭제를 하면서 확인해본결과 찾았습니다
    슬라이드 쪽에 있는 스크립트였습니다


    <script type="text/javascript">
    jQuery(document).ready(function(){

    jQuery('#sb_flashbox').smallslider({onImageStop:false, switchEffect:'ease',switchEase: 'easeOutBounce',switchPath: 'up', switchMode: 'hover', textSwitch:2, textPosition: 'top', textAlign:'center'});

    jQuery('#sb_exp1').smallslider();

    jQuery('#sb_exp2').smallslider({ onImageStop:true, switchEffect:'ease',switchEase: 'easeOutSine',switchPath: 'left', switchMode: 'hover', showText:true, textSwitch:2 });

    jQuery('#sb_exp3').smallslider({ showButtons:false, showText : true, switchEffect:'ease',switchEase: 'easeOutCirc',switchPath: 'up', textSwitch:1,textAlign:'center'});

    });
    </script>



    이건데요 여기서어디를 수정해야 할까요 혹시 충돌이 나는 부분을 수정하여 사용할수 있을가요 ...?

  • ? Lv30
    글쎄요. 제가 말씀드린건 공통스크립트를 로드했을 경우 문제가 생기는 사례이구요. 적어주신 스크립트가 문제인지 어떤문제 인지 저는 잘 모릅니다.

    문제가 생길때 콘솔에 뜨는 에러라도 확인해보시고 질문을 해보시면 개발자분들이 확인해 주실 수도 있겠네요.

    물론 지금 적어주신 스크립트 자체가 문제인지는 개발자분들은 아실 수 있을지도 모르겠네요.
  • Lv30 ?
    지금 다시 위 스크립트를 하나씩 삭제를 해보니 딱하나를 찾았습니다

    <script type="text/javascript">
    jQuery(document).ready(function(){

    위 에서 바로 "document" 입니다 저것을 다른 영어로 변경을 하니 아주 잘됩니다
    저것을 다른것으로 변경을 해도 상관 없을가요 그냥 제가 알아서 아뭇거나 뭐 "document"이것을

    "aaaaaaaaaaa" 뭐 이렇게요
  • ? Lv30
    글쎄요. 전 이상해 보이진 않는데요. 콘솔에 뜨는 에러를 보세요.
  • Lv30 ?
    에러는 총 8개네요 많기도 하네요

    21:31:58.280 index.php?mid=windows_news&document_srl=620&act=dispBoardWrite:306 Uncaught ReferenceError: aaaa is not defined
    at index.php?mid=windows_news&document_srl=620&act=dispBoardWrite:306
    21:32:59.480 index.php:307 Uncaught TypeError: jQuery(...).smallslider is not a function
    at HTMLDocument.<anonymous> (index.php?mid=windows_news&document_srl=620&act=dispBoardWrite:307)
    at l (jquery.min.js?20180925124733:3)
    at Object.fireWith [as resolveWith] (jquery.min.js?20180925124733:3)
    at Function.ready (jquery.min.js?20180925124733:3)
    at HTMLDocument.S (jquery.min.js?20180925124733:3)
    (anonymous) @ index.php?mid=windows_news&document_srl=620&act=dispBoardWrite:307
    l @ jquery.min.js?20180925124733:3
    fireWith @ jquery.min.js?20180925124733:3
    ready @ jquery.min.js?20180925124733:3
    S @ jquery.min.js?20180925124733:3
    21:44:18.666 index.php:307 Uncaught TypeError: jQuery(...).smallslider is not a function
    at HTMLDocument.<anonymous> (index.php?mid=windows_news&document_srl=620&act=dispBoardWrite:307)
    at l (jquery.min.js?20180925124733:3)
    at Object.fireWith [as resolveWith] (jquery.min.js?20180925124733:3)
    at Function.ready (jquery.min.js?20180925124733:3)
    at HTMLDocument.S (jquery.min.js?20180925124733:3)
    (anonymous) @ index.php?mid=windows_news&document_srl=620&act=dispBoardWrite:307
    l @ jquery.min.js?20180925124733:3
    fireWith @ jquery.min.js?20180925124733:3
    ready @ jquery.min.js?20180925124733:3
    S @ jquery.min.js?20180925124733:3
    21:44:20.320 index.php?mid=windows_news&document_srl=620&act=dispBoardWrite:307 Uncaught TypeError: jQuery(...).smallslider is not a function
    at HTMLDocument.<anonymous> (index.php?mid=windows_news&document_srl=620&act=dispBoardWrite:307)
    at l (jquery.min.js?20180925124733:3)
    at Object.fireWith [as resolveWith] (jquery.min.js?20180925124733:3)
    at Function.ready (jquery.min.js?20180925124733:3)
    at HTMLDocument.S (jquery.min.js?20180925124733:3) 이렇게 나옵니다
    아 분명 "document" 이게 문제인데 아마도 에디터가 "document" 이거하고 충돌이 나는것 같아요
  • ? Lv30
    원래대로 하시고 에러를 보세요.
  • Lv30 ?

    지금 여기서 보니 에러에도 document 이게 있군요 이거하고 겹치는 모양 입니다 
    그럼 이런 경우 저것을 찾아서 다른 것으로 수정해야 할가요 

     

    sssssss.PNG

     

    어느부분을 수정해야 할까요 제가 아무리 봐도 모르겠네요 ...?

  • Lv30 ?
    jQuery(document).ready(function(){ 이것을 아래 처럼 변경하니 잘됩니다

    $(document).ready(function(){

    위와 같이해도 될지 모르겠습니다

    검색해보니 $(document).ready(function(){ 이렇게 하지말라고 하던데 말이죠
  • ? Lv30
    글쎄요. 그건 그냥 에러가 뜨는 곳에 주소를 표시하려다 보니 주소 변수가 나오는 것 뿐인듯 한데요.
    레이아웃을 받아봤는데 굉장이 많은 jquery 파일이 내장되어 로드되고 있네요. 오래된 것들이라 아마 코어에서 필요한 스크립트와 충돌이 나는 것들이 있지 않을까 하는 생각만 드네요.

    저는 개발자가 아니라 도움은 드리기 어렵네요.
    에러가 나는 곳을 계정과 함께 공개하셔야 할 것 같은데 개발자 분이라도 에러만 보고 답을 찾기 쉽지는 않을 것 같습니다.

    레이아웃 구조가 굉장히 복잡하고 너무 많은 오래된 스크립트를 사용하고 있어 저라면 사용을 안하게 될 것 같습니다.
  • Lv30 ?
    네 안그래도 그게 걱정 입니다 스크립트가 오래된것이 있다는것도 문제고요
    많은 스크립트가 있다는것도 문제고요 단지 다른 레이아웃에 비하여 정확하게 돌아가는것 같아서요
    사용하고 있습니다 ㅎㅎ
    감사합니다