вопрос по js

Тема в разделе "Веб-дизайн", создана пользователем rsha1988, 8 мар 2009.

Статус темы:
Закрыта.
Модераторы: zek24
  1. rsha1988

    rsha1988

    Регистр.:
    7 апр 2006
    Сообщения:
    552
    Симпатии:
    133
    Привет всем, нужна помощь:
    Есть js скрипт который при нажатии на ссыку\кнопку берет контент с другой странице! Вот он:


    Код:
    var request;
    
    function createRequest() {
      try {
        request = new XMLHttpRequest();
    	 
      } catch (trymicrosoft) {
        try {
          request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (othermicrosoft) {
          try {
            request = new ActiveXObject("Microsoft.XMLHTTP");
          } catch (failed) {
            request = false;
          }
        }
      }
      if (!request)
        alert("Error initializing XMLHttpRequest!");
    }
    function sendQuery(ids , url) {
    	 
         createRequest();
         document.getElementById("content"+ids).innerHTML = document.getElementById("splash"+ids).innerHTML;
         request.open("GET", url, true);
         request.onreadystatechange = function(){ updatePage(+ids)};
         request.send(null);
    	 
    }
    function updatePage(ids) {
    
         if (request.readyState == 4) {
           if (request.status == 200) {
    
             document.getElementById("content"+ids).innerHTML = request.responseText;
    
           } else
             alert("status is " + request.status);
         }
       }
    
    Рабочий вариант: _http://band1t.msk.ru/js/Untitled-1.htm


    нужно примерно то же самое что и здесь: _http://band1t.msk.ru/?q=eminem
    - при нажатии на ссылку открываецо плеер... при нажатии на следующую ссылку - плеер который открыт - закрываецо и открываецо следующий плеер..

    такой же принцип нужен и для этого скрипта!

    Помогите чем можете ... я c js , до этого момента вообще не работал!
     
  2. rsha1988

    rsha1988

    Регистр.:
    7 апр 2006
    Сообщения:
    552
    Симпатии:
    133
    Изменил функцию обновления вот так:

    Код:
    var opentrack=0;
    function updatePage(ids) {
    
         if (request.readyState == 4) {
           if (request.status == 200) {
    	   
              if (opentrack!=0){
    	      document.getElementById("content"+opentrack).innerHTML = '';
    		  opentrack=0;
    	      }
             document.getElementById("content"+ids).innerHTML = request.responseText;
    		 opentrack=ids;
    
           } else
             alert("status is " + request.status);
         }
       }
    
    Но почему то оно глючит:
    Нажимаю на первую кнопку...- контент загружается и отображается!

    Нажимаю на вторую кнопку...- контент который был загружен при нажатие первой кнопки удаляется ... и загружается новый контент который был запрошен при нажатие второй кнопки!

    Снова нажимаю на первую кнопку...- контент не загружается... ничего не происходит! При нажатие на вторую кнопку - то же самое!:nezn:

    -------------------------------------------------------------------------------------------

    Все... разобрался... тему можно закрывать\удалять... =)
     
Статус темы:
Закрыта.