포럼
이 문제의 답은 어디에도 없습니다.
2012.09.20 03:42
탭형 최근게시물 위젯에 이상이 생겼습니다.
모두 7개의 탭형 최근게시물이 메뉴가 있는데, 어느 것은 정상 작동하고 다른 것들은 마우스를 올리면 위의 탭 혹은 옆의 탭 이 움직이고 정작 올려놓은 탭은 작동하지 않습니다.
각 최근게시물에 속한 메뉴버튼은 제대로 작동하지만 전체적으로 탭이 전혀 작동을 하지 않습니다.
다른 탭형 최근게시물 위젯으로 바꾸어보았지만 똑같은 현상을 보입니다.
시스템을 바꾼 적도 없고 xe를 업그레이드 하지도 않았습니다.
호스팅 회사에서 PHP를 업그레이드 했는지는 잘 모르겠습니다.
XE 버전은 1.4.4.1입니다.
아래 사이트에서 확인할 수 있습니다.
http://standrewkimchicago.org/xe/home
간절한 마음으로 답변을 기다리겠습니다.
댓글 9
-
코불스
2012.09.20 07:21
-
ToFinder
2012.09.20 09:48
http://www.xpressengine.com/userForum/21187224
zxet 인가.. 최신버전으로 업그래이드 도전해보심도 좋을 듯 합니다.
이유야 어찌되었건 작동이 잘못되어지는경우인듯 한데
보기에는 자바스크립트의 오작동인듯 하네요.
보여지는 부분이 잘못인식 되어진듯 합니다.
자신의 밑에 인식되어져야 하는데 위의 아이디값을 받아서 보여주는듯 한데
결론은 위젯 자체가 오류가 있는 위젯인듯 하네요.
-
루띠92
2012.09.20 10:29
이것참.....위젯이 많이 이상한데요.....
제가 지식이 얕지만 제가 보기에도 아주이상합니다. 아이디를 중복하여 사용하다니...
아래 이미지를 보시면 탭버튼의 아이디값과 해당 탭레이어의 아이디가 같습니다.(아이디 중복) 물론 이것이 원인이 아니라 다른곳에 그 아이디가 또 쓰였다는 것입니다. 위젯을 다른것으로 바꿔서 사용해보세요,,,,
아래 이미지에 빨간색으로 줄친건 " 가 중복된 오류,,,
다른곳에서 중복된 아이디값
-
ToFinder
2012.09.20 11:52
다른 특정같은경우 여러가지를 사용할때 벌어질 수 있는 부분이 있기때문에
경우에 따라서 뒷번호에 _01 이라는 번호를 부여하더군요.
이 부분이 어찌보면 상단의 메뉴부분에 보시면 자바로 연결되어지지만 뒷번호가 메뉴에 따라서
추가되어져 연결되어진것을 알 수 있어요.
하지만 위젯은 추가를 하더라도 해당 부분을 그냥 읽어오는듯 하여보입니다. ^^
얇은 지식속에서 앞으로 변화되었으면 하는 부분은
위젯에도 개별적인 번호를 받아서 레이아웃역시 그 번호를 연결하도록 유도하면 이러한 부분은
그냥 생각치 않아도 될 문제라고 생각이 되어지네요
다만 위젯 스킨 제작자들은 class나 id의 중복성을 막기 위해서 뒤에다가 받아오는 기호를 넣어야겠지요.
tabBox_$wNum 같은 형식으로요. ^^*
-
루띠92
2012.09.20 18:21
/* file: ./widgets/newest_document_tab/skins/left_teb_gallery/js/tab.js */ function overTab(obj) { var tab_id = obj.id; var cObj = obj.parentNode.firstChild; while(cObj) { if(cObj.nodeName == "DIV" && cObj.id) { var cTabID= cObj.id; if(cTabID.indexOf('tab')<0) continue; var cContentID = cTabID.replace(/^tab/,'content'); if(tab_id == cTabID) { cObj.className = "tab on"; xGetElementById(cContentID).className = "tabContent show"; } else { cObj.className = "tab"; xGetElementById(cContentID).className = "tabContent hide"; } } cObj = cObj.nextSibling; } }
위의 코드가 문제의 홈페이지에 사용된 tab의 스크립트인 것 같은데요,,,,
(참고로 저는 위의 코드를 정확히 해석할 수 있는 지식을 가지고 있지는 않습니다. 틀리면 죄송....)
탭메뉴위에 마우스가 가면 아이디를 저장하고, 부모노드로 이동하여 자식중에 동일한 아이디값을 찾아서 show하는 형식의 스크립트 같은데요
문제는 아이디가 중복된 것들(1~3번)은 다른곳에서 show/hide를 진행하고, 아이디가 중복되지 않은 것들(4~6번)은 정상적으로 show/hide를 하고 있습니다.
안보이는 이유가 바로 최초로 show된 것이 아이디값을 정상적으로 받아오지 못해서... hide되지않아 안보이는 것 뿐이지요..(4~6번을 선택하여도..)
마크업을 수정해서 ID가 중복되지 않게 하거나.....스크립트를 수정해주어야 할 것 같습니다..
-
마음의빈자리
2012.09.20 18:51
정확한 파일명과 이 부분의 코드를 이렇게 바꿔봐라가 아니라면 이 분께는 직접적인 도움이 되지 않을 것 같다는 생각이 드네요.
-
루띠92
2012.09.20 19:05
저도 그렇게 생각합니다.....ㅠ.ㅜ
-
num10shirt
2012.09.20 22:14
여러분께서 도움을 주시니 감사드립니다. 헌데 마음의 빈자리님 말씀처럼 어느 부분, 어느 코드를 손봐야 하는지 알려주시면 정말정말 감사하겠습니다. 전 무척 절박합니다.
-
배워서남준다
2012.09.21 02:03
광고하는것 같아서 죄송한데요. xelist 위젯 사용해 보세요. 현재 사용하고 계신 스킨과 기능은 비슷하고요. 상단 탭이 조금 다를뿐 나머지는 크게 다르지는 않는것 같네요. 어짜피 그런 종류의 위젯들이 대부분 비슷 비슷해서.... 샘플은 저의 홈피 메인에 있습니다. http://www.study4you.kr
큰 도움 못드려서 죄송합니다.
제가 도움을 드리고 싶어도 질문 내용에 지식이 없어서 답변을 못드리겠네요.
MD분들이 적극적으로 나서서 도와주시면 고맙겠습니다.