[JavaScript, AJAX] Задай вопрос, получи ответ

Discussion in 'PHP' started by banned, 9 Jun 2007.

Thread Status:
Not open for further replies.
  1. eXp

    eXp Member

    Joined:
    6 Nov 2007
    Messages:
    13
    Likes Received:
    6
    Reputations:
    4
    Code:
    <script type="text/javascript">
      var no = Math.floor(10*Math.random()+5);
      var hidesnowtime = 0;
      var snowdistance = "pageheight";
    
      var ie4up = (document.all) ? 1 : 0;
      var ns6up = (document.getElementById&&!document.all) ? 1 : 0;
    
    	function iecompattest(){
    	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
    	}
    
      var dx, xp, yp, img;
      var am, stx, sty;
      var i, doc_width = 800, doc_height = 600;
    
      if (ns6up) {
        doc_width = self.innerWidth;
        doc_height = self.innerHeight;
      } else if (ie4up) {
        doc_width = iecompattest().clientWidth;
        doc_height = iecompattest().clientHeight;
      }
    
      dx = new Array();
      xp = new Array();
      yp = new Array();
      am = new Array();
      stx = new Array();
      sty = new Array();
      img = new Array();
      for (i = 0; i < no; ++ i) {
        dx[i] = 0;
        xp[i] = Math.random()*(doc_width-50);
        yp[i] = Math.random()*doc_height;
        am[i] = Math.random()*20;
        stx[i] = 0.02 + Math.random()/10;
        sty[i] = 0.7 + Math.random();
        if (img[i]==''||img[i]=='undefined') {
        var rand = Math.floor(10*Math.random());
        if  (rand>=4)
        img[i] =  "snow1.gif";
        else if (rand>=7)
        img[i] =  "snow2.gif";
        else
        img[i] =  "snow3.gif";
        }
    		if (ie4up||ns6up) {
            document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src='"+img[i]+"' border=\"0\"><\/div>");
        }
     }
    
      function snowIE_NS6() {
        doc_width = ns6up?window.innerWidth-10 : iecompattest().clientWidth-10;
    		doc_height=(window.innerHeight && snowdistance=="windowheight")? window.innerHeight : (ie4up && snowdistance=="windowheight")?  iecompattest().clientHeight : (ie4up && !window.opera && snowdistance=="pageheight")? iecompattest().scrollHeight : iecompattest().offsetHeight;
        for (i = 0; i < no; ++ i) {
          yp[i] += sty[i];
          if (yp[i] > doc_height-50) {
            xp[i] = Math.random()*(doc_width-am[i]-30);
            yp[i] = 0;
            stx[i] = 0.02 + Math.random()/10;
            sty[i] = 0.7 + Math.random();
          }
          dx[i] += stx[i];
          document.getElementById("dot"+i).style.top=yp[i]+"px";
          document.getElementById("dot"+i).style.left=xp[i] + am[i]*Math.sin(dx[i])+"px";
        }
        snowtimer=setTimeout("snowIE_NS6()", 10);
      }
    
    	function hidesnow(){
    		if (window.snowtimer) clearTimeout(snowtimer)
    		for (i=0; i<no; i++) document.getElementById("dot"+i).style.visibility="hidden"
    	}
    
    
    if (ie4up||ns6up){
        snowIE_NS6();
    		if (hidesnowtime>0)
    		setTimeout("hidesnow()", hidesnowtime*1000)
    		}
    
    </script> 
    
    так должно работать
     
    #241 eXp, 31 Dec 2007
    Last edited: 31 Dec 2007
  2. Stalk

    Stalk Elder - Старейшина

    Joined:
    8 Dec 2007
    Messages:
    23
    Likes Received:
    3
    Reputations:
    0
    Где скрипт берет картинку из масива имг? Поетому и андерфайнд возвращает, и вместо снежынок летают значки ))... Допишы плиз )
     
  3. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    <meta HTTP-EQUIV="refresh" content="1; URL=index.php">
    м?
     
  4. je0n

    je0n Elder - Старейшина

    Joined:
    14 May 2006
    Messages:
    345
    Likes Received:
    96
    Reputations:
    41
    [x26]VOLAND
    я ниче не проверял и не делал, но на мысль наведу. короче, вывод своего скрипта делаешь не инклудом, а через ифрейм (<ifreim src=your_script.... frameborder=0></iframe>). и в самом твоем скрипте добавляешь такой javascript
    PHP:
    setTimeout("document.location='your_script.php'",10000);
    страница в ифрейме будет каждые десять секунд обновляться, не затрагивая основную страницу.

    параметр frameborder у фрейма - чтобы все четко смотрелось. чтобы не было видно, что это фрейм
     
    #244 je0n, 4 Jan 2008
    Last edited: 4 Jan 2008
  5. Joker-jar

    Joker-jar Elder - Старейшина

    Joined:
    11 Mar 2007
    Messages:
    581
    Likes Received:
    205
    Reputations:
    37
    [x26]VOLAND, это через ajax можно замутить
     
  6. je0n

    je0n Elder - Старейшина

    Joined:
    14 May 2006
    Messages:
    345
    Likes Received:
    96
    Reputations:
    41
    ум.... смотри, короче, на простеньком примере:
    файл test.html
    Code:
    <html>
    <body>
    <h1>ururururu</h1>
    <iframe src=1.html name="test"></iframe>
    </body>
    </html>
    
    файл 1.html
    Code:
    <script>
    alert('');
    setTimeout("document.location='1.html'",10000);
    </script>
    
    у меня вроде перезагружается только ифрейм. юзаю фф. другим ничем не пробовал. попробуй так со своими файлми-скриптами

    запускать надо test.html :)
     
  7. eXp

    eXp Member

    Joined:
    6 Nov 2007
    Messages:
    13
    Likes Received:
    6
    Reputations:
    4
    мб так прокатит
    Code:
    document.getElementById("bbb").innerHTML='<img src="img.jpg?nocache='+Math.floor(1000*Math.random())+'">';
    
    2Stalk все работает. Наверное ты не правильно указал путь к картинке
     
    #247 eXp, 5 Jan 2008
    Last edited: 5 Jan 2008
  8. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Code:
    var div = document.getElementById('bbb');
    var pic = div.getElementsByTagName('img')[0];  // 0 - номер нужной картинки.
    
    Метод обновления картинки на 23 странице.

    eXp, мб у него ещё много чего в этом блоке находится, зачем всё стирать?
     
  9. NOmeR1

    NOmeR1 Everybody lies

    Joined:
    2 Jun 2006
    Messages:
    1,068
    Likes Received:
    783
    Reputations:
    213
    PHP:
    <div id="bbb">
      <
    img src="http://forum.antichat.ru/antichat/pic/rac.gif">
     </
    div>
     <
    script>
      var 
    src "http://forum.antichat.ru/antichat/pic/logo.gif";
      var 
    div document.getElementById('bbb');
      var 
    pic div.getElementsByTagName('img')[0];
      
    pic.setAttribute("src"src);
     
    </script>
    Тогда уж так.
     
  10. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    В том и дело, что картинка не будет обновляться, т.к. src фактически не меняется.
    Решение уже было в этой теме, нет смысла переписывать его ещё раз.
     
  11. NOmeR1

    NOmeR1 Everybody lies

    Joined:
    2 Jun 2006
    Messages:
    1,068
    Likes Received:
    783
    Reputations:
    213
    =\ нихрена не понял, но если ты имеешь ввиду периодически обновлять картинку, то вот: раз в 5 секунд.
    PHP:
    <div id="bbb">  
      <
    img src="http://forum.antichat.ru/antichat/pic/logo.gif">  
     </
    div>  
     <
    script>  
      
    setTimeout("reload()"5000); 
      function 
    reload() 
      { 
       
    src "http://forum.antichat.ru/antichat/pic/logo.gif";  
       
    div document.getElementById('bbb');  
       
    pic div.getElementsByTagName('img')[0];  
       
    pic.setAttribute("src"src);  
      } 
     
    </script>
     
    #251 NOmeR1, 5 Jan 2008
    Last edited: 5 Jan 2008
  12. Dimi4

    Dimi4 Чайный пакетик

    Joined:
    19 Mar 2007
    Messages:
    750
    Likes Received:
    1,046
    Reputations:
    291
    У меня есть скрипт - таймер. И формочка, батон.
    PHP:
    <HTML>
    <
    HEAD>
    <
    TITLE>Timer</TITLE>
    </
    HEAD>
    <
    Script Language="JavaScript">
    <!-- 
    Hiding

    /*    Script By Lefteris Haritou
        http://www.geocities.com/~lef
        Please Keep The Credit Above
        No Copyrights but be fair
    */

    function display(){
    rtime=etime-ctime;
    if (
    rtime>60)
    m=parseInt(rtime/60);
    else{
    m=0;
    }
    s=parseInt(rtime-m*60);
    if(
    s<10)
    s="0"+s
    document
    .forms.w1.w2.value="Часу залишилося:  "+m+":"+s
    window
    .setTimeout("checktime()",1000)
    }

    function 
    settimes(){
    alert("You have 20 minutes time !")
    var 
    time= new Date();
    hourstime.getHours();
    minstime.getMinutes();
    secstime.getSeconds();
    etime=hours*3600+mins*60+secs;
    etime+=10;  //You can change the value of 1200 according to how much time you wish to set the timer. Where 1200 is time in secs (1200 = 20 mins * 60 secs/min). Max time is 60 mins (3600secs)
    checktime();
    }

    function 
    checktime(){
    var 
    time= new Date();
    hourstime.getHours();
    minstime.getMinutes();
    secstime.getSeconds();
    ctime=hours*3600+mins*60+secs
    if(ctime>=etime){
    expired();
    }
    else
    display();
    }

    function 
    expired(){
    alert("Time expired");

    }

    // Done hiding -->
    </Script>
    <BODY onLoad="settimes()">
    <!-- following code added by server. PLEASE REMOVE -->
    <!-- preceding code added by server. PLEASE REMOVE -->
    <Center><H2>Look in the status bar. In 20 mins you will be forced to change page</H2>
    </Center>

    <form name="w1">
    <input type="text" name="w2">
    </form>
    <form name=qw method=post  action=./index1.php><input type=text name=an ><input type=submit name=ok></form>
    </BODY>
    </HTML>
    Как сделать так, чтоб когда выходить время нажималась кнопка сабмит?
    Почемуто неработает так:
    PHP:
    document.forms.qw=submited;
     
  13. Noiro

    Noiro Banned

    Joined:
    1 Jan 2008
    Messages:
    47
    Likes Received:
    16
    Reputations:
    5
    Надо хотя-бы так :
    PHP:
    document.forms.qw.submit();
     
    1 person likes this.
  14. Dimi4

    Dimi4 Чайный пакетик

    Joined:
    19 Mar 2007
    Messages:
    750
    Likes Received:
    1,046
    Reputations:
    291
    Как реализовать такую картинку(в виде полосы), которая внизу странице всегда была.
    Ну как у вовеб реклама,тока в низу.
    А то я чет с их кодом не разберусь
     
  15. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Code:
    <style type="text/css">
    img
    {
      position: fixed;
      bottom: 0;
    }
    </style>
    
    Для IE6: http://www.artlebedev.ru/tools/technogrette/html/fixed_in_msie/
     
    1 person likes this.
  16. geezer.code

    geezer.code Elder - Старейшина

    Joined:
    22 Jan 2007
    Messages:
    552
    Likes Received:
    358
    Reputations:
    90
    звук на страничке

    хеллоу , всем.
    Такая ситуация ...
    -есть страничка .
    -на ней список слов
    -каждому слову соответствует звуковой файл.
    - возле каждого слова кнопка.
    -по нажатию любой кнопки нужно проиграть соответствующий звук.
    ! при этом страница не должна перегружаться. но возможен ajax.

    файлы ogg | wav | mp3 любой из этих форматов.

    какие будут предложения... что использовать?

    спасибо за внимание.
     
  17. dinar_007

    dinar_007 Мадемуазель

    Joined:
    18 Jan 2005
    Messages:
    1,019
    Likes Received:
    770
    Reputations:
    97
    Ajax расчитан на текстовые данные... Нельзя сделать то что ты хочешь...
    Выход - потоковое видео только...
    Ну или аудио...
     
    3 people like this.
  18. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    geezer.code, ajax не нужен.
    Можно обойтись одним-единственным элементом <embed> и / или <object> / <bgsound>. Для упрощения лучше назначить ему идентификатор.

    При нажатии на кнопку просто присваиваешь src вышеописанному элементу.
    В идеале - имя файла будет совпадать со словом.
    Если этого сделать нельзя, то используй дополнительные атрибуты (title, к примеру) и в них храни имя нужного файла.
     
    1 person likes this.
  19. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    Всем привет, я опять за скриптом :)
    В общем нужен скрипт для формы, чтобы при нажатии обрамлял выделенный текст bb-кодом. Из того что нашёл, всё работает некорректно, т.е. добавляет bb-код после выделенного текста. а мне нужно как на форуме, чтобы сразу))
    Заранее спасибо!
     
  20. NOmeR1

    NOmeR1 Everybody lies

    Joined:
    2 Jun 2006
    Messages:
    1,068
    Likes Received:
    783
    Reputations:
    213
    PHP:
    <script>
    function 
    bbcode(bb_startbb_end)
    {
     
    document.forms.form.content.focus ();
     var 
    document.selection.createRange ();
     var 
    str a.text;
     
    a.text bb_start str bb_end;
    }
    </script>
    <form name='form'>
    <input type='button' value="Жирный текст" onclick='bbcode("[b]", "[/b]")'><br><br>
    <textarea cols='50' rows='20' name='content'></textarea>
    </form>
     
Thread Status:
Not open for further replies.