kijin / xe-zipperupper

XE ZipperUpper! 애드온
GNU Lesser General Public License v2.1
1 stars 1 forks source link

모바일레이아웃에서 어떤 스크립트가 실행이 되지 않는 듯 합니다. #11

Closed wookho closed 9 years ago

wookho commented 9 years ago

제가 사용하는 레이아웃이 마켓에서 판매하는 플랫모바일입니다.

https://www.xemarket.co.kr/index.php?mid=marketiteminfo&act=dispMarketitemDetailListView&item_srl=355657

오늘 우연히 모바일에서 크롬과 기본브라우저에서 글읽기로 이동하면 메뉴가 눌리지 않고 글읽기로 전환되었을때 상단 우측의 검색버튼이 목록버튼으로 바뀌지 않는 것을 확인하게 되었습니다. 지금은 모바일 사용자의 불편을 생각해 모바일에서 애드온사용을 해제 하였구요.

환경은 안드로이드 5.0 갤럭시S5 기본/크롬브라우저에서 확인되었습니다. 그런데 저희가 웹뷰앱도 사용하는데 웹뷰 앱에서는 이상이 없더군요.

특수한상황에서만 발생하는 문제일지 몰라 이슈를 열어야 하나 고민하다 일단 열어보기로 했어요.

상황 확인을 위해서는 애드온적용을 해 두어야 하는 그렇지 못했네요.

kijin commented 9 years ago

상용 레이아웃이라 제가 직접 소스를 다운받아 확인해 보는 것은 곤란하겠습니다. 님이 몇 가지만 체크해 주세요.

위의 두 가지 중 하나라도 해당되는 것이 있다면 현재로선 이 애드온을 사용하실 수 없습니다. 별도의 media 속성을 가진 CSS나 외부에서 로딩하는 스크립트는 하나로 합칠 수 없거든요. 일부 파일이 합쳐지지 않고 남게 되면 로딩 순서가 변경되어 여러 가지 문제가 생길 수 있습니다.

wookho commented 9 years ago

이상한점른 이전에 발견하지 못했던 현상이라 최근 설치한 자료가 공홈에 공개된 conory님의 불펌모니터링 모듈과 관련이 있나 의심도 됩니다.

wookho commented 9 years ago

@kijin 예상한대로 위에 언급해 드린 자료를 사용할때 문제가 생기는 것을 확인했어요.

https://www.xpressengine.com/forum/23033932

kijin commented 9 years ago

메뉴나 검색버튼 등 JS에 의존하는 기능이 작동하지 않는다는 것은 어디선가 스크립트 오류가 발생하고 있다는 뜻입니다. 안 쓰는 게시판에 레이아웃, 불펌모니터링 모듈, zipperupper 애드온을 모두 활성화시켜 놓고 테스트해 볼 수 있을까요?

wookho commented 9 years ago

@kijin 불펌모니터링 모듈로 인한 문제인지는 확인했습니다. 그럼 1개 게시판만 현상을 재현하도록 조치하겠습닌다.

http://pomelove.com/xe/request

kijin commented 9 years ago

스크립트 오류

Uncaught TypeError: Cannot read property 'init' of undefined

합쳐진 파일들 중 ./modules/copytrack/tpl/js/copytrack.js 2번째 줄에서 발생합니다. 문제의 init 메소드는 11번째 줄에서 정의하는데, 정의하기도 전에 호출했으니 오류가 발생할 수밖에 없죠.

해당 구문은 jQuery의 document.ready 이벤트 내에 있기 때문에, 대부분의 경우에는 다소 지연되어 호출됩니다. 따라서 아직 정의하지 않은 메소드라도 실제로 저 구문이 호출될 때는 이미 정의되어 있을 가능성이 높죠. 그러나 스크립트 여러 개를 합쳐서 페이지 로딩 속도가 빨라지면 예상보다 훨씬 빨리 호출될 수도 있습니다.

./modules/copytrack/tpl/js/copytrack.js 파일의 첫 3줄을 잘라서 맨 아래로 옮겨보고, 차이가 있는지 알려주세요.

wookho commented 9 years ago

@kijin 말씀해주신대로 변경했더니 레이아웃 동작에 이상이 없어졌습니다.

kijin commented 9 years ago

conory님께 이 이슈 링크를 보내드리고, 수정해 달라고 하세요 ^^