2012-06-29 2 views
2

페이지가로드 될 때 커서를 변경하는 데 문제가 있습니다. 내 코드는 다음과 같습니다Prototype.js로 브라우저 커서 변경

Event.observe(window, 'load', function() { 
    document.body.style.cursor = 'wait'; 
    $$('select').each(function(s) { 
     var ajaxRequest = new Ajax.Request(
      '/some_ajax_proc', 
      { 

페이지가로드, 커서가 변경되지 않는 경우.

$('mytxt').observe('change', function() { 
     document.body.style.cursor = 'wait'; 
    } 

UPDATE : 그러나 같은에 더 다른 이벤트 리스너에서 문제없이 수행 OK, 그것은 커서를 변경 않지만, 아약스 루프 후 document.body.style.cursor = 'default';이 이후, 그것은 immediatly 내가 추측 다시 변경 스레드 문제입니다. 이 경우에 어떤 힌트가 필요합니까?

+0

어떤 브라우저에서이 메시지가 표시됩니까? Mac에서 최신 사파리에서 저를 위해 일하십시오. – dontGoPlastic

+0

[jsfiddle] (http://jsfiddle.net)을 사용하여 문제를 표시 할 수 있습니까? – Starx

답변

2

시도해 보셨습니까?

Ajax.Responders.register({ 
    onCreate: function() { 
       if (Ajax.activeRequestCount === 1) { 
        //Code for change the cursor, something like this: 
        document.body.style.cursor = 'wait'; 
       } 
      }, 
    onComplete: function() { 
        if (Ajax.activeRequestCount === 0) { 
        // End loading... 
        .... 
        } 
       } 
}); 
+1

이 작업을 수행합니다 ... 감사합니다. – xain

0

어떻게 구문에 대한 :

Event.observe(window, 'load', function() { 
    $(document.body).setStyle({ 
    cursor: 'wait' 
    }); 
}); 

이 나를 위해 작동하지만, 그것의 것입니다, 당신은 정의 중 하나 커서와 요소가 수행 또는 다른 커서 스타일 (아마도 드래그 항목이나 클릭 가능한 링크가있는)?

<body> 태그가 실제로 방화범이나 Chrome 개발자 도구와 같은 것을 사용하여 실제로 적용된 스타일인지 여부를 확인하고자합니다.

+0

답장을 보내 주셔서 감사하지만 행운은 없습니다. 나는 그것이 스타일 문제라고 생각하지 않는다. .. 내가 언급했던 것에 따라 그것은 잘 이후에 잘 작동한다. 나는 최근에 더 많은 정보를 추가했다. – xain

+0

@xain 설정을 복제하려면 어떻게해야합니까? 이 코드는 저에게 효과적입니다. 이 코드가 다른 것과 상호 작용할 가능성이 있습니까? 당신이 시도한 것에 대한 더 많은 정보가 도움이 될 것입니다. – artlung

+0

'wait'에 커서를 놓으면 'load'이벤트 안에 Ajax.Request를 추가하는 것이 좋습니다. 감사합니다 – xain

-1

이미 jquery를 사용하고 있습니다.

$('mytxt').observe('change', function() { 
    $("body").css("cursor", "wait"); 
} 
+1

아무 것도 잘못,이 대답. 의견을 제시하시오. – Starx