Автообновления

Тема в разделе "JavaScript", создана пользователем SocMaster, 31 май 2013.

Модераторы: ZiX
  1. SocMaster

    SocMaster aka Hakerok

    Регистр.:
    26 июл 2011
    Сообщения:
    202
    Симпатии:
    47
    Ребята есть такой код в шаблоне
    Код:
        <script type="text/javascript" src="{$_G[setting][jspath]}html5notification.js?{VERHASH}"></script>
        <script type="text/javascript">
        var h5n = new Html5notification();
        if(h5n.issupport()) {
            <!--{if $_G[member][newpm] && $_GET[do] != 'pm'}-->
            h5n.shownotification('pm', '$_G[siteurl]home.php?mod=space&do=pm', '<!--{avatar($_G[uid],small,true)}-->', 'У вас новое ЛС', 'Кликните что посмотреть');
            <!--{/if}-->
            <!--{if $_G[member][newprompt] && $_GET[do] != 'notice'}-->
                    <!--{loop $_G['member']['category_num'] $key $val}-->
                        <!--{eval $noticetitle = lang('template', 'notice_'.$key);}-->
                        h5n.shownotification('notice_$key', '$_G[siteurl]home.php?mod=space&do=notice&view=$key', '<!--{avatar($_G[uid],small,true)}-->', '$noticetitle ($val)', '{lang newnotice_notice_info}');
                    <!--{/loop}-->
            <!--{/if}-->
        }
        </script>
    Помогите его сделать обновляемым по времени..каждые например 2 секунды он обновляется..
     
  2. wendel

    wendel Создатель

    Регистр.:
    6 ноя 2011
    Сообщения:
    12
    Симпатии:
    7
    Код:
        <script type="text/javascript" src="{$_G[setting][jspath]}html5notification.js?{VERHASH}"></script>
        <script type="text/javascript">
        setTimeout(function() {
            var h5n = new Html5notification();
            if(h5n.issupport()) {
                <!--{if $_G[member][newpm] && $_GET[do] != 'pm'}-->
                h5n.shownotification('pm', '$_G[siteurl]home.php?mod=space&do=pm', '<!--{avatar($_G[uid],small,true)}-->', 'У вас новое ЛС', 'Кликните что посмотреть');
                <!--{/if}-->
                <!--{if $_G[member][newprompt] && $_GET[do] != 'notice'}-->
                        <!--{loop $_G['member']['category_num'] $key $val}-->
                            <!--{eval $noticetitle = lang('template', 'notice_'.$key);}-->
                            h5n.shownotification('notice_$key', '$_G[siteurl]home.php?mod=space&do=notice&view=$key', '<!--{avatar($_G[uid],small,true)}-->', '$noticetitle ($val)', '{lang newnotice_notice_info}');
                        <!--{/loop}-->
                <!--{/if}-->
            }
        }, 2000);
       
        </script>
    Попробуй так. 2000 - Время в миллисекундах.
     
  3. Waki

    Waki Постоялец

    Регистр.:
    14 ноя 2012
    Сообщения:
    64
    Симпатии:
    21
    setTimeout надо заменить на setInterval, а то всего один раз сработает
     
  4. SocMaster

    SocMaster aka Hakerok

    Регистр.:
    26 июл 2011
    Сообщения:
    202
    Симпатии:
    47
    не работает..
    Этот код выводит уведомления через html 5 api
     
  5. Waki

    Waki Постоялец

    Регистр.:
    14 ноя 2012
    Сообщения:
    64
    Симпатии:
    21
    Hakerok, jquery подключено на сайте?
     
  6. SocMaster

    SocMaster aka Hakerok

    Регистр.:
    26 июл 2011
    Сообщения:
    202
    Симпатии:
    47
    Да. Но двиг конфликтует с ним. Я обычно использую вместо $ свой знак
    Но тут не обнаружил $
     
  7. Waki

    Waki Постоялец

    Регистр.:
    14 ноя 2012
    Сообщения:
    64
    Симпатии:
    21
    Если конфликтует, попробуй так:
    Код:
    var $j = jQuery.noConflict();
     
    var check_pm = function(){ 
        var h5n = new Html5notification();
        if(h5n.issupport()) {
            <!--{if $_G[member][newpm] && $_GET[do] != 'pm'}-->
            h5n.shownotification('pm', '$_G[siteurl]home.php?mod=space&do=pm', '<!--{avatar($_G[uid],small,true)}-->', 'У вас новое ЛС', 'Кликните что посмотреть');
            <!--{/if}-->
            <!--{if $_G[member][newprompt] && $_GET[do] != 'notice'}-->
                    <!--{loop $_G['member']['category_num'] $key $val}-->
                        <!--{eval $noticetitle = lang('template', 'notice_'.$key);}-->
                        h5n.shownotification('notice_$key', '$_G[siteurl]home.php?mod=space&do=notice&view=$key', '<!--{avatar($_G[uid],small,true)}-->', '$noticetitle ($val)', '{lang newnotice_notice_info}');
                    <!--{/loop}-->
            <!--{/if}-->
        } 
    };
     
    $j(function(){ 
       window.setInterval(check_pm, 2000); 
    });