-
Notifications
You must be signed in to change notification settings - Fork 27
강의 숨기기 기능 사용 시 레이아웃이 깨지는 문제 #26
Comments
위의 이미지는 제가 수강중인 "휴먼컴퓨터인터페이스" 과목의 한 강의의 객체 데이터 값을 console창을 통해 확인해본 결과입니다. PS. |
앗, 그렇군요. 직접 확인해보니까 |
저런 버그가 강의 숨기기 ON 상태에서만 발생한다면, 강의 숨기기 버튼 클릭 이벤트 핸들러 뒷부분에 값을 할당함으로써 해결할 수 있지 않을까 싶어요.
현재 코드에서 저 부분에서 작성해보면 어떨까요? |
테스트를 해보긴 했는데 역시 안되네요. 강의 숨기기 ON 상태일 때만 된다기보다는 강의 숨기기를 사용하면 깨지는 것으로 보입니다. 다시 OFF로 돌려놔도 깨진 레이아웃이 그대로 유지가 되어있어요. |
어렵네요... 😢 혹시 저 버그가 나는 부분의 강의 숨기기 활성화 전,후 객체가 어떤 값들인지 알려주실 수 있을까요? 시간나는대로 조사해보겠습니다. |
객체 자체의 값 변화는 없는 것 같고요. 일단 제가 분석한 결과로는 |
아예 표를 다시 처음부터 그려서 만들던지, 아니면 아예 실행 시점을 바꾸는 방법밖엔 없을 것 같네요.. 전자는 많이 비효율적일 것 같고, 후자는 지금 방식이 너무 빠르면 |
기능만 생각하고 후다닥 만들었더니 이런 문제가... 혹 해결하게 되면 comment, PR 남기겠습니다 😂 |
사진과 같이 강의 숨기기 기능을 사용할 경우 가끔씩 레이아웃이 깨지는 문제가 발생합니다. 새로고침을 하거나 새로운 강의로 이동하면 다시 복구되기는 합니다.
원인
appModule.setRowspan
함수는 표 레이아웃을 설정해 주는 함수입니다. 이 코드가 강의 숨기기 기능과 맞지 않아서 발생하는 문제입니다. 그래서 #21 부분과 같이 유저 스크립트에서 저 함수를 수정해서 해결하기는 했지만, 새로고침 시에 유저 스크립트가 코드를 덮어 씌우기 전에 먼저setRowspan
함수가 호출돼서 발생하는 문제로 보입니다.해결 방안
setRowspan
함수가 호출되기 전에 유저 스크립트에서 먼저 덮어씌우면 해결될 것으로 보입니다. 하지만 그 부분을 어떻게 할 수 있을지 잘 모르겠네요. 이 버그를 해결할 수 있거나 다른 좋은 아이디어가 있다면 댓글을 남겨주시거나 풀 리퀘스트를 보내주시면 감사하겠습니다!The text was updated successfully, but these errors were encountered: