2012-08-02 3 views
1

Javascript와 Jquery에 관해서는 거의 알지 못하므로 여기서 대답을 얻을 수 있기를 희망합니다.서로 간섭하는 자바 스크립트

<head></head>의 코드는 다음과 같습니다. 내가 모든 것을 위의 입력 된 코드를 삽입 할 때

<script src="js/jquery.js" type="text/javascript"></script> 
    <script src="js/functions.js" type="text/javascript"></script> 
    <script type="text/javascript" src="js/jscolor/jscolor.js"></script> 
<script type="text/javascript"> 

var current_shouts = 0; 
      function $(eleid) { 
       return document.getElementById(eleid); 
      } 
      function urlencode(u) { 
       u = u.toString(); 
       var matches = u.match(/[\x90-\xFF]/g); 
       if (matches) { 
        for (var mid = 0; mid < matches.length; mid++) { 
         var char_code = matches[mid].charCodeAt(0); 
         u = u.replace(matches[mid], '%u00' + (char_code & 0xFF).toString(16).toUpperCase()); 
        } 
       } 
       return escape(u).replace(/\+/g, "%2B"); 
      } 
      function shouts() { 
       clearTimeout(getshout); 
       var xmlHttp = (window.XMLHttpRequest) ? new XMLHttpRequest : new ActiveXObject("Microsoft.XMLHTTP"); 
       xmlHttp.open("GET", "../shoutbox/shouts.php?i=" + Math.random()); 
       xmlHttp.onreadystatechange = function() { 
        if (this.readyState == 4) { 
         if (parseInt(this.responseText) > current_shouts) { 
          getshouts(); 
          current_shouts = parseInt(this.responseText); 
         } 
         getshout = setTimeout("shouts()", 1000); 
        } 
       } 
       xmlHttp.send(null); 
      } 
      function getshouts() { 
       var xmlHttp = (window.XMLHttpRequest) ? new XMLHttpRequest : new ActiveXObject("Microsoft.XMLHTTP"); 
       xmlHttp.open("GET", "../shoutbox/getshouts.php?i=" + Math.random()); 
       xmlHttp.onreadystatechange = function() { 
        if (this.readyState == 4) $("shoutbox").innerHTML = this.responseText; 
$("shoutbox").scrollTop = $("shoutbox").scrollHeight; 
       } 
       xmlHttp.send(null); 
      } 
      function push_shout() { 
       shout(); 
       return false; 
      } 
      function shout() { 
       var xmlHttp = (window.XMLHttpRequest) ? new XMLHttpRequest : new ActiveXObject("Microsoft.XMLHTTP"); 
       xmlHttp.open("POST", "../shoutbox/shout.php"); 
       var data = "user=" + urlencode($("user").value) + "&" + "shout=" + urlencode($("shout").value); 
       xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
       xmlHttp.setRequestHeader("Content-length", data.length); 
       xmlHttp.onreadystatechange = function() { 
        if (this.readyState == 4) { 
         if (!this.responseText) $("shout").value = ""; 
         else { 
          $("console").innerHTML = this.responseText; 
          setTimeout("$('console').innerHTML = ''", 5000); 
         } 
         getshouts(); 
        } 
       } 
       xmlHttp.send(data); 
       return true; 
      } 
      var getshout = setTimeout("shouts()", 1000); 
</script> 

그것은 것, 그것은 작동하지 않습니다,하지만 작동 위의 코드가 표시됩니다으로 앉아 있다면 다른 사람은 할 수 있지만, 위의 스크립트는 더 이상 작동하지 않습니다.

나는 $.noConflict();을 시도했지만 아무것도하지 않았으므로 여기서 무엇을 해야할지 잘 모릅니다.

제안 사항? 당신은 당신이 필요할 때마다 jQuery 오브젝트를 참조 할 $j을 사용할 수 있습니다

$j = jQuery.noConflict(); 

:

+0

.js 파일 경로가 올바른지 확인할 수 있습니까? 받은 오류 메시지를 게시 할 수 있습니까? – Vikram

+3

jquery를 사용하는 경우 $()를 재정의하는 이유는 무엇입니까? 함수 $ (eleid) {}. jquery가 ajax 호출을 수동으로 설정하는 경우 $ .ajax()의 크로스 브라우저 메소드를 사용할 수 있기 때문에 많은 의미가 없습니다. – scrappedcola

+0

은 @scrappedcola와 동의합니다. 이미 jQuery가있는 경우 중복 기능이 필요한 이유는 무엇입니까? 처음부터 물건을 작성하는 것은 한 가지이지만 분명히 이미 jQuery가 있습니다.이 작업은 사용자가 수행중인 작업 (DOM 조회, AJAX 호출)을위한 작업입니다. – zatatatata

답변

2

같은 뭔가를하려고합니다.

+0

고마워,이 문제가 해결 된 것 같습니다 :) – kira423

+0

@ kira423 youre welcome! 자기 발기인이 될 수는 없지만,이 대답으로 문제가 해결된다면 받아 들일 수 있을까요? 감사! –

0

jQuery 플러그인이 어떻게 든 충돌합니다. 둘 다 HTML 문서의 머리 부분, 연속적으로 분리 된 스크립트 태그 영역 사이에로드했습니다. 그럼 내가 사용 :

window.onload = function() {function01(); function02();};

은 질서 각각의 기능을로드하고 개별적으로 할 수 있습니다.

이번에는 저에게 효과적이었습니다.

+0

이 답변은 질문과 관련이없는 것으로 보입니다. 어떻게 도움이되는지 자세히 알려주십시오. –

관련 문제