Помогите со скриптом
|
|
|
2013-09-06Дата: Пятница, 06.09.2013, 22:18 | Сообщение # 1 |
Рядовой
Группа: Проверенные
Статус: Offline
|
Всем привет. Кто может, подскажите. Есть скрипт: <script type="text/javascript" src="/js/cookie2.js"></script> <script type="text/javascript"> function iseed1() { $('.view_2').fadeOut(400, function(){$('.view_1').fadeIn(400)}); $('.type_2').fadeOut(400, function(){$('.type_1').fadeIn(400)}); setCookie('presee', '0', 1, '/')} function iseed2() { $('.view_1').fadeOut(400, function(){$('.view_2').fadeIn(400)}); $('.type_1').fadeOut(400, function(){$('.type_2').fadeIn(400)}); setCookie('presee', '1', 1, '/') } var presee = getCookie("presee") if (presee=='0') { $('.type_1').show(); $('.type_2').hide(); $('.view_1').show(); $('.view_2').hide(); } </script>
После нажатия на кнопку, меняется вид материала: <td align="undefined" valign="undefined"> <div onclick="iseed2()"> <button><a href="javascript:;"><img style="border: 0px solid ; width: 24px; height: 24px;" alt="" title="Вид материала-1" src="/diz_1/vid2.png"></a></button></div></td> <td align="undefined" valign="undefined"><div onclick="iseed1()"> <button><a href="javascript:;"><img style="border: 0px solid ; width: 24px; height: 24px;" alt="" title="Вид материала-2" src="/diz_1/vid1.png"></a> </button></div></td> Но вся проблема состоит в том, что после обновления страницы, куки не запоминает вид материала. Вот это мне и надо исправить. Может кто что подсказать?
| | |
|
|
2013-09-06Дата: Пятница, 06.09.2013, 22:34 | Сообщение # 2 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
qwerty, Но вся проблема состоит в том, что после обновления страницы, куки не запоминает вид материала. Вот это мне и надо исправить. Может кто что подсказать? Почему вы так решили?
По коду вижу: <div onclick="iseed2()"> <button><a href="javascript:;"> - функция iseed2() а в ней прописано: function iseed2() { $('.view_1').fadeOut(400, function(){$('.view_2').fadeIn(400)}); $('.type_1').fadeOut(400, function(){$('.type_2').fadeIn(400)}); setCookie('presee', '1', 1, '/') и ниже: var presee = getCookie("presee") if (presee=='0') { - а кука-то == 1 (presee == 1 - что однозначно видно из функции iseed2) .. ..
» Плавное сворачивание / разворачивание блока + куки
| | |
|
|
2013-09-06Дата: Пятница, 06.09.2013, 23:03 | Сообщение # 3 |
Рядовой
Группа: Проверенные
Статус: Offline
|
likbezz, скрипт просто не мой... и вот как бы не могу понять. все равно не работает( вот сам скрипт js файла который я подключаю Код function setCookie(name, value, expiredays, path, domain, secure) { if (expiredays) { var exdate=new Date(); exdate.setDate(exdate.getDate()+expiredays); var expires = exdate.toGMTString(); } document.cookie = name + "=" + escape(value) + ((expiredays) ? "; expires=" + expires : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : ""); }
function getCookie(name) { var cookie = " " + document.cookie; var search = " " + name + "="; var setStr = null; var offset = 0; var end = 0; if (cookie.length > 0) { offset = cookie.indexOf(search); if (offset != -1) { offset += search.length; end = cookie.indexOf(";", offset) if (end == -1) { end = cookie.length; } setStr = unescape(cookie.substring(offset, end)); } } return(setStr); }
function deleteCookie(nameCo) { var exp3 = new Date(); exp3.setTime (exp3.getTime() - 1000000000); var cval = getCookie(nameCo); document.cookie = nameCo + "=" + cval + "; expires=" + exp.toGMTString(); }
| | |
|
|
2013-09-07Дата: Суббота, 07.09.2013, 00:30 | Сообщение # 4 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
qwerty, вот сам скрипт js файла который я подключаю - ну, это стандартные функции записи/получения куки. Они тут ни при чем. Указал же где копать - постом выше - то что сохраняется кука со значением 1 а проверяется на ноль.. Там есть ссылка на готовое решение - дописать ваше оформление, если есть что, конечно ..
А если так .. - не айс код вообще. Совсем плохой.
| | |
|
|
2013-09-07Дата: Суббота, 07.09.2013, 10:26 | Сообщение # 5 |
Рядовой
Группа: Проверенные
Статус: Offline
|
Понятно, спасибо. Ну попробую поколдовать.
| | |
|
|
2014-09-23Дата: Вторник, 23.09.2014, 14:47 | Сообщение # 6 |
Лейтенант
Группа: Проверенные
Статус: Offline
|
Добрый день, сразу прошу прощения за дублирующийся материал (в FAQ написал, но там даты ответов немного пугают)). Поэтому, решил написать и здесь. Собственно вопрос: Ниже скрипт, который, в принципе, работает: Код <script type="text/javascript"> (function() { var textHolder = document.getElementsByClassName('big-text-neon')[0], text = textHolder.innerHTML, chars = text.length, newText = '', i;
for (i = 0; i < chars; i += 1) { newText += '<em>' + text.charAt(i) + '</em>'; }
textHolder.innerHTML = newText;
var letters = document.getElementsByTagName('em'), flickers = [5, 7, 9, 11, 13, 15, 17], randomLetter, flickerNumber, counter;
function randomFromInterval(from,to) { return Math.floor(Math.random()*(to-from+1)+from); }
function hasClass(element, cls) { return (' ' + element.className + ' ').indexOf(' ' + cls + ' ') > -1; }
function flicker() { counter += 1; if (counter === flickerNumber) { return; }
setTimeout(function () { if(hasClass(randomLetter, 'off')) { randomLetter.className = ''; } else { randomLetter.className = 'off'; }
flicker(); }, 30); }
(function loop() { var rand = randomFromInterval(300,1200);
randomLetter = randomFromInterval(0, 6); randomLetter = letters[randomLetter]; flickerNumber = randomFromInterval(0, 3); flickerNumber = flickers[flickerNumber];
setTimeout(function() { counter = 0; flicker(); loop(); }, rand); }()); })(jQuery); </script> в нем есть строка "document.getElementsByClassName('big-text-neon')[0]", где идет поиск первой 'big-text-neon' , как добавить и второе совпадение? Другими словами, скрипт срабатывает на первом попавшемся class="big-text-neon", ко второму он уже не притрагивается. Хотелось бы, чтобы работало во всех совпадениях, например: <span class="big-text-neon" id="one">ТЕКСТ1</span> <span class="big-text-neon" id="two">Текст2</span>. Заранее спасибо)
| | |
|
|
2014-09-24Дата: Среда, 24.09.2014, 00:04 | Сообщение # 7 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
chila, Хотелось бы, чтобы работало во всех совпадениях, например: <span class="big-text-neon" id="one">ТЕКСТ1</span> <span class="big-text-neon" id="two">Текст2</span>. Либо по ID - циклом, либо, если подключена jq var textHolder = $('.big-text-neon'), ..
| | |
|
|
2014-09-24Дата: Среда, 24.09.2014, 16:56 | Сообщение # 8 |
Лейтенант
Группа: Проверенные
Статус: Offline
|
Как все же плохо совершенно ничего не смыслить в js. Вроде бы как и ответ есть, а результаты все там)... var textHolder = $('.big-text-neon'), ... поменял, не работаеть, возможно, что то еще нужно.. или не там) Либо по ID - циклом, либо, если подключена jq jquery подключена, а как id перечислить.. циклом... Спасибо за помощь!
| | |
|
|
2014-09-24Дата: Среда, 24.09.2014, 17:25 | Сообщение # 9 |
Аццкий кодер
Группа: Администраторы
Статус: Unknown
|
chila, а как id перечислить.. циклом... Вы понимаете, что на ответ на этот вопрос я затрачу больше времени чем на написание всего скрипта? А написание скриптов на заказ - платная услуга.
Так что, либо вооружитесь терпением и изучите, хотя бы слегка циклы и элементы в JS, либо прошу в раздел платных услуг.
Навскидку: Код var textHolder = document.getElementsByClassName('big-text-neon'); for(k=0,j=textHolder.length;k<j;k++){ var text = textHolder[k].innerHTML,chars = text.length,newText = '',i; for (i = 0; i < chars; i += 1) { newText += '<em>' + text.charAt(i) + '</em>'; } textHolder[k].innerHTML = newText; }
| | |
|