오마이뉴스에서 기사를 본후..

국내에 웹 사이트들이 웹 표준을 지키고 OS나 브라우저와 관계 없이 접근성을 향상 시키기 위한 사이트 버그 신고 및 문제 해결을 위한 게시판입니다.
Post Reply
Thom
서포터즈
서포터즈
Posts: 91
Joined: 2005 09 02 13:18 18
Contact:

오마이뉴스에서 기사를 본후..

Post by Thom »

메인 페이지로 돌아가려면, 뒤로가가를 두 번해야 메인 페이지로 돌아가더군요.

전에는 그러지 않았던것 같은데, 웹 페이지의 문제인지... 게코의 버그인지는 잘 모르겠네요.

WXP SP2, 1.5 쓰고 있습니다.
User avatar
후니미닉
해커
해커
Posts: 1393
Joined: 2004 12 11 20:01 26
Contact:

Post by 후니미닉 »

페이지에 들어간 후 한번 리플래쉬(새로고침)되는 것(납치 태그에 주로 사용되는 방법)으로 알고 있습니다.
페이지를 두번여니 두번눌러야 이전 페이지로 돌아가는 것이지요.
빛알갱이
해커
해커
Posts: 1146
Joined: 2004 01 15 20:06 36

Post by 빛알갱이 »

그렇긴 한데, 그래도 좀 '똑똑하게' 처리할 수 있으면 좋겠지요. 어느 게 맞다고 얘기하기는 어렵지만(?), 사용자에게 하나로 인식된다면 뒤로 돌아가기도 한 번에 가능해야 할 듯 싶습니다.

전에도 오마이뉴스에서 뒤로 돌아가기 문제가 있었는데, 그것은 정말 불여우 버그였습니다. 그 뒤에 고쳐서 잘 보이다가 최근에 다시 그런 현상이 보이더군요. 오마이뉴스가 그 뒤에 뭔가를 고친 것인지 불여우에 다시 버그가 들어 갔는지 (session history 코드에) 잘 모르겠습니다.
빛알갱이
해커
해커
Posts: 1146
Joined: 2004 01 15 20:06 36

Post by 빛알갱이 »

viewtopic.php?t=2249&highlight=ohmynews

에서 파란 사오정님이 진단하신 것과 같은 문제가 있습니다. 오페라와 파이어 폭스 모두 같은 문제가 있더군요. 이 경우는 파란 사오정님이 말씀하신 경우와 달리 4초 지연을 두고 있습니다. 따라서, 아래와 같은 페이지를 다른 페이지에서 있는 링크를 통해 불러 들이면, 4초 후에 iframe에 있는 광고가 뜹니다. 광고가 뜬 후에 뒤로 가기를 하면, 광고만 사라질 뿐, 본래 링크를 했던 페이지로 돌아가지 않습니다. 다시 한번 누르면 그 앞 페이지로 돌아갑니다. 이 버그는 분명히 고쳤던 것으로 기억하는데, 부활했군요.....

Code: Select all

<html>
<head>
<title>iframe location test</title>
<SCRIPT LANGUAGE="JavaScript">
<!--
function iframe_src(fn, url){

x = eval(fn);
x.location.href = url;

}
setTimeout("iframe_src(
'frmmainbig',
'http://ad.ohmynews.com/rolling_ad/ad2005/main@newbig.asp?ad_time=60')",
4000);
//-->
</SCRIPT>
</head>
<body>

Here come Iframe: 
<table width="970" border="0" cellspacing="0" cellpadding="0">
			<TR><TD align=center><iFRAME name=frmmainbig NORESIZE src="about:blank" SCROLLING=no HSPACE=0 VSPACE=0 FRAMEBORDER=0 MARGINWIDTH=0 MARGINHEIGHT=0 width=970 height=140 align=center></IFRAME></TD></TR>
			</TABLE>


</body>
Last edited by 빛알갱이 on 2006 01 17 21:00 05, edited 2 times in total.
빛알갱이
해커
해커
Posts: 1146
Joined: 2004 01 15 20:06 36

Post by 빛알갱이 »

빛알갱이
해커
해커
Posts: 1146
Joined: 2004 01 15 20:06 36

Post by 빛알갱이 »

빛알갱이 wrote:버그 보고했습니다.

https://bugzilla.mozilla.org/show_bug.cgi?id=321084
그런데, 이게 좀 까다로운 문제가 있습니다. AJAX에서 이와 비슷한 방법을 많이 써서 페이지 본문 내용 (주변부의 봐도 좋고 안 봐도 좋은 광고가 아니라)을 바꾸는 경우가 많습니다. 이 경우 브라우저의 "뒤로 가기" 버튼이 어떻게 동작해야 되는지에 대해 논란의 여지가 있습니다. 본문 내용을 바꿨으므로 (gmail에서 'older'를 누른 경우를 생각해 보십시오), '뒤로 가기' 버튼을 누르면 본문 내용이 바뀌기 전 페이지로 가야 하는 게 맞다고 할 수도 있고, 반대로 그냥 AJAX를 쓴 그 페이지를 완전히 떠나는 게 맞다고 할 수도 있습니다. 제 생각에는 AJAX로 페이지 왔다 갔다 한 것은 AJAX 안에서 제공하는 앞뒤 움직임 '링크'를 이용하는 게 좋고, 브라우저의 앞뒤 움직이기 기능은 URL 단위로 작동하는 게 옳다고 봅니다. 이렇게 얘기하면, frame이 있는 경우에도 그렇게 해야 하지 않느냐고 얘기할 수도 있겠지요....

여러분의 생각은 어떠신가요?
박민권
해커
해커
Posts: 724
Joined: 2005 01 31 22:33 55
Location: 대한민국
Contact:

Post by 박민권 »

빛알갱이 wrote: 제 생각에는 AJAX로 페이지 왔다 갔다 한 것은 AJAX 안에서 제공하는 앞뒤 움직임 '링크'를 이용하는 게 좋고, 브라우저의 앞뒤 움직이기 기능은 URL 단위로 작동하는 게 옳다고 봅니다. 이렇게 얘기하면, frame이 있는 경우에도 그렇게 해야 하지 않느냐고 얘기할 수도 있겠지요....

여러분의 생각은 어떠신가요?
저도 빛알갱이님의 생각처럼 동작하는게 바르다고 생각합니다.
빛알갱이
해커
해커
Posts: 1146
Joined: 2004 01 15 20:06 36

Post by 빛알갱이 »

박민권 wrote:
빛알갱이 wrote: 제 생각에는 AJAX로 페이지 왔다 갔다 한 것은 AJAX 안에서 제공하는 앞뒤 움직임 '링크'를 이용하는 게 좋고, 브라우저의 앞뒤 움직이기 기능은 URL 단위로 작동하는 게 옳다고 봅니다. 이렇게 얘기하면, frame이 있는 경우에도 그렇게 해야 하지 않느냐고 얘기할 수도 있겠지요....

여러분의 생각은 어떠신가요?
저도 빛알갱이님의 생각처럼 동작하는게 바르다고 생각합니다.
모질라 개발자인 bz(해당 버그의 커멘트를 보십시오)는 생각이 좀 다른 것 같군요. 정확히 그 이슈에 대한 얘기는 아니었으므로, 좀더 논의를 해 보아야겠습니다.

오마이뉴스의 경우는 굳이 'about:blank'로 했다가 4초 후에 광고만 따로 로드하는 방식을 왜 쓰는지 잘 모르겠습니다. 아마도 기사를 읽으러 들어왔다가 4초가 경과하기 전에 바로 뒤로 돌아가는 경우에 광고를 로드하지 않도록 해서 서버 부하를 줄이고 싶었던 모양입니다. 그렇다면, iframe src에 'about:blank'를 쓰지 않고, 그냥 비워 두고 나중에 replace하는 써도 될 텐데 (이게 오마이뉴스가 몇 달 전까지 쓰던 방식입니다.)... 오마이뉴스는 연락하기에 적당한 이메일 주소도 잘 안 보이네요. 전화를 해야 하나... '달팽이' 편지를 써야 하나...
오마이뉴스

안녕하세요. 오마이뉴스 입니다.

Post by 오마이뉴스 »

확인 후, 수정했습니다. :)
빛알갱이
해커
해커
Posts: 1146
Joined: 2004 01 15 20:06 36

Post by 빛알갱이 »

안녕하세요?

수정을 해 주셔서 감사합니다. 그런데, 그렇게 고치면 될 것이라고 - 확인해 보지 않은 채로- 말한 게 잘못이었습니다. 그래도 역시 안 됩니다. 전에 오마이뉴스에서 쓰던 방식을 약간 변형해서 4초의 시간 지연을 두고 광고를 로드하지만, 뒤로 돌아가기가 잘 동작하는 방식으로 다시 수정을 해 주시면 좋겠습니다. 다음과 같이 하면 (innerHTML을 쓰지 않고 할 수도 있겠지만....) 파이어폭스나 IE에서도 모두 뒤돌아가기 버튼이 잘 동작합니다.

html에는 iframe을 넣지 않고, 그 iframe을 감싸는 요소에 id를 부여한 후, javascript에서 그 감싸는 요소를 getElemetnById로 얻은 후에 그 안에 iframe을 넣는 방식입니다. 전에 오마이뉴스에서는 이 때 시간 지연을 주지 않았지만, 아래의 코드는 현재 오마이뉴스에서 하듯이 시간 지연을 줍니다. 하지만, 현재와 달리 뒤로 가기 버튼이 파이어폭스와 오페라에서도 잘 동작힙니다. IE에서도 잘 되고요.
뒤로 갔다가 다시 돌아왔을 때 동작은 세 브라우저가 다 다르군요. 하지만, 그 차이는 그다지 큰 문제는 아니라고 생각합니다.

다음 보기와 같은 방식으로 고쳐 주시면 고맙겠습니다. 오마이뉴스에 갈 때마다 뒤로 가기 버튼을 세 번씩 (이런 식으로 넣은 광고가 한 페이지에 대개 두 개씩 있더군요) 눌러야 하는 불편에서 벗어나도록 해 주십시오.

Code: Select all

<html>
<head>
<title>iframe location test</title>
</head>
<body>

Here comes Iframe:
<table width="970" border="0" cellspacing="0" cellpadding="0">
    <TR><TD id="adcell" align=center>
    </TD></TR>
            </TABLE>

<SCRIPT type="text/javascript">
<!--
function insertIframe(obj, url, attrbStr){

    document.getElementById(obj).innerHTML = 
     "<iframe src='" + url + "' " + attrbStr + " </iframe>";
}

setTimeout("insertIframe('adcell'," +
           "'http://ad.ohmynews.com/rolling_ad/ad2005/main@newbig.asp?ad_time=60'," +
           "'NORESIZE SCROLLING=no HSPACE=0 VSPACE=0 FRAMEBORDER=0 MARGINWIDTH=0" +
           "MARGINHEIGHT=0 width=970 height=140 align=center')",4000);
//-->
</SCRIPT>

</body>
</html>
짐꾼
도우미
도우미
Posts: 329
Joined: 2004 03 27 04:29 00

Re: 안녕하세요. 오마이뉴스 입니다.

Post by 짐꾼 »

오마이뉴스 wrote:확인 후, 수정했습니다. :)
이 글보을 보고 다시 가봤는데 여전히 안되길래 도대체 뭘 수정한거지라는 생각이 들었었는데.. 8)
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0
Fox Fan
서포터즈
서포터즈
Posts: 87
Joined: 2004 09 07 06:03 21
Contact:

재대로 고쳐진 것 같은데요..

Post by Fox Fan »

저는 거의 모든 웹페이지에서 제목을 탭으로 차례차례 열어두고 나중에 열린 탭을 하나씩 읽어보는 습관이라.. 탭브라우징의 묘미죠.. 이전 페이지로 이동하는 데도 이런 복잡한 문제가 있는 줄 몰랐네요.. :shock:

근데 현재는 오마이뉴스 이전 페이지 이전 버튼이 한번에 제대로 잘 먹고 있습니다..
제대로 수정된 것 같습니다..
빛알갱이
해커
해커
Posts: 1146
Joined: 2004 01 15 20:06 36

Re: 재대로 고쳐진 것 같은데요..

Post by 빛알갱이 »

Fox Fan wrote: 근데 현재는 오마이뉴스 이전 페이지 이전 버튼이 한번에 제대로 잘 먹고 있습니다..
제대로 수정된 것 같습니다..
아직 안 고쳐졌답니다 :-) 아마 adblock으로 광고를 막아 놓으신 모양입니다. adblock을 쓰는 것도 오마이뉴스 사이트에서 뒤로 가기 버튼 문제를 해결하는 방법이군요.
Fox Fan
서포터즈
서포터즈
Posts: 87
Joined: 2004 09 07 06:03 21
Contact:

Re: 재대로 고쳐진 것 같은데요..

Post by Fox Fan »

빛알갱이 wrote: 아직 안 고쳐졌답니다 :-) 아마 adblock으로 광고를 막아 놓으신 모양입니다.
아.. 그렇군요.. 근데.. 빛알갱이님.. 수상타.. :D 제가 adblock 쓰는 걸 정확하게 아시네요.. :lol: 혹시 해커? ^^
빛알갱이
해커
해커
Posts: 1146
Joined: 2004 01 15 20:06 36

Post by 빛알갱이 »

adblock을 켜 놓았을 때 문제가 없어지는 것 같았는데... 아니군요. 뒤로 가기 단추를 두 번씩 누르는데 지쳐서greasemonkey 확장을 설치하고 아주 단순 무식한 user script를 하나 짰습니다.

Code: Select all

// ==UserScript==
// @name          OhMyNews Ad-frame remover
// @namespace     http://youngup.net/userscripts
// @description	  Replace annoying ad iframes by a dummy span so that the back button works
// @include       http://www.ohmynews.com/*
// ==/UserScript==
// Notes:
//   * is a wildcard character
//   .tld is magic that matches all top-level domains (e.g. .com, .co.uk, .us, 
etc.)

(function () {

var dummy1 = document.createElement("span");

var bigad=document.getElementByName("frmmainbig"); 
bigad.parentNode.replaceChild(dummy1, bigad);

var dummy2 = document.createElement("span");
var topad=document.getElementByName("topAdFrm"); 
topad.parentNode.replaceChild(dummy2, topad);

})();
이 파일을 ohmynews.user.js란 이름으로 저장한 후에 ff에서 열면 이 userscript를 설치하라는 얘기가 브라우저 창 상단에 뜹니다. 그 때, 설치 단추를 누르면 됩니다.

iframe의 이름이 페이지마다 조금씩 다르군요. 일단 오늘은 이렇게... 나중에 좀더 똑똑하게 고치겠습니다.
yser=이서

Post by yser=이서 »

빛알갱이 wrote:
박민권 wrote:
빛알갱이 wrote: 제 생각에는 AJAX로 페이지 왔다 갔다 한 것은 AJAX 안에서 제공하는 앞뒤 움직임 '링크'를 이용하는 게 좋고, 브라우저의 앞뒤 움직이기 기능은 URL 단위로 작동하는 게 옳다고 봅니다. 이렇게 얘기하면, frame이 있는 경우에도 그렇게 해야 하지 않느냐고 얘기할 수도 있겠지요....

여러분의 생각은 어떠신가요?
저도 빛알갱이님의 생각처럼 동작하는게 바르다고 생각합니다.
모질라 개발자인 bz(해당 버그의 커멘트를 보십시오)는 생각이 좀 다른 것 같군요. 정확히 그 이슈에 대한 얘기는 아니었으므로, 좀더 논의를 해 보아야겠습니다.

오마이뉴스의 경우는 굳이 'about:blank'로 했다가 4초 후에 광고만 따로 로드하는 방식을 왜 쓰는지 잘 모르겠습니다. 아마도 기사를 읽으러 들어왔다가 4초가 경과하기 전에 바로 뒤로 돌아가는 경우에 광고를 로드하지 않도록 해서 서버 부하를 줄이고 싶었던 모양입니다. 그렇다면, iframe src에 'about:blank'를 쓰지 않고, 그냥 비워 두고 나중에 replace하는 써도 될 텐데 (이게 오마이뉴스가 몇 달 전까지 쓰던 방식입니다.)... 오마이뉴스는 연락하기에 적당한 이메일 주소도 잘 안 보이네요. 전화를 해야 하나... '달팽이' 편지를 써야 하나...
이건 사용자들의 습관과 관련된 문제이므로 당분간 혼선이 예상됩니다. <a href="http://yser.egloos.com/2095055">링크의 새 창 vs 현재 창</a> 문제만봐도 과연 어느 것이 올바를지는 알 수가 없죠. 결국 사람에 따라 다르다는 건데 가급적 쓰는 사람이 헷갈리지 않도록 안전 장치를 마련해야 합니다.

그리고 zdnet도 예전에 그런 문제가 있었습니다. 아주 심각했죠. 거의 5초마다 광고 몇 개를 동시에 계속 리프레시하는 덕분에 글 읽다가 뒤로 가기 하려면 몇십번을 눌러야했습니다. 악독했던 문젠데 지금은 그나마 좀 낫더군요.
yser
서포터즈
서포터즈
Posts: 52
Joined: 2005 01 28 11:12 17
Contact:

Post by yser »

p.s
빛알갱이님이 12월 21일에 적은 글에서 인용한 부분에

setTimeout("iframe_src('frmmainbig', ...

로 된 부분 덕에 FF에서 이 스레드가 가로를 길게 늘여뜨려버리는 것 같습니다.
''로 둘러싼 다음에 공백 한 칸씩 넣어서 자동 개행이 되도록 해주시면 보기 좋을 듯 한데요. ^^;
User avatar
후니미닉
해커
해커
Posts: 1393
Joined: 2004 12 11 20:01 26
Contact:

Post by 후니미닉 »

탭믹스플러스가 0.3으로 업데이트되면서 기능사용 여부(웹 디벨로퍼 확장 기능에 있었던 기능)를 설정할 수 있게 되었습니다.(이전 부터 있었는지도...)
여기서 리다이렉트를 체크해제하면 그런 현상을 막을 수 있을 것으로 보입니다.
탭 믹스 플러스정도는 대부분 기본적으로 사용중이시니 별도의 확장 기능 설치라는 부담감은 없습니다.
그런데 모든 탭에 영구적으로 적용되는 게 아니라 탭마다 일일이 설정해줘야 하는지라...
Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests