무료 계정을 지원하기 위해 측면에 광고 배너를 사용하는 웹 앱을 작성했습니다. 문제는 광고가 자체 <div>에로드되었으므로 최신 브라우저에서 개발자/디버그 콘솔로 이동하여 div를 제거하거나 CSS 재정의를 사용하여 광고 크기를 0px로 조정하는 것이 상대적으로 쉽습니다 (사용자가 앱 작업 공간에서 더 많은 부동산을 얻습니다.) 이를 방지하기 위해 광고가있는 div의 속성이 CSS 스타일을 포함하여 전혀 변경되지 않았는지 주기적으로 확인하고 CSS 스타일을 포함하는 페이지를 다시로드하는 방법을 고려했습니다. 필자가 일부 드로잉을 위해 캔버스 요소를 사용하고 있기 때문에 캔버스를 지우는 것이므로 사용자에게 상대적으로 성가신 일이 될 수 있으므로 광고가 조작되지 않으면 다시로드하지 않을 것입니다.DOM을 사용한 사용자 조작 감지
사람들이 돌연변이 이벤트를 사용하여 DOM 변경 사항을 추적하는 것과 비슷한 질문을했습니다. 그러나 답변을 기반으로 모든 브라우저에 지원이있는 것 같지 않습니다. (다시 보았을 때, 내가 본 스레드는 2008 년과 2009 년 이후로 변경되었을 수 있습니다.)
내가 생각했던 또 다른 대안은 페이지로드가 끝나면 div의 offsetWidth, offsetHeight, offsetTop, offsetLeft를 읽고 현재 값과 주기적으로 비교하는 것입니다 (전체적으로 많이 할 수있는 것은 아닙니다. 당신이 그것을 움직일 수 없으면 div를 떠나게하십시오).
당신은 무엇을 제안합니까?
DOM을 조작 할 수 없다면 웹 개발이 재미있을 것입니다. – mrk
사용자가 더 많은 부동산을 얻기 위해이 작업을 수행하는 경우, 사용 가능한 영역의 너비를 고정하여 그 이유를 막을 수 있습니까? –
고맙습니다. @Don, 그게 결국 궁극적으로 끝났습니다. 광고가있는 경우 광고 크기가 조정될 수있는 여러 div가 있으므로 사용자가 광고를 제거하더라도 js 코드가 수정되거나 다른 div가 수정되지 않으면 얻을 수있는 것이 없습니다. 나중에 창 크기를 조정하십시오. 다른 사람들이 유효한 포인트를 가져 오는 동안, 나는 그들이 그 질문에 답한 것에 동의하지 않는다. StackOverflow를 사용하여 솔루션으로 의견을 수락하면 의견을 수락합니다. –