JavaScript & jQuery
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Чтобы не создавать отдельные темы с проблемой в JavaScript, решил создать тему с вопросами по jS и jQ. Задаем вопросы… Ссылки для обучения JS: 1. Центральный Javascript-ресурс 2. Учебники JavaScript 3. Уроки JavaScript 4. Справочник JavaScript 5. JavaScript tutorials 6. Плагины для jQuery 7. Учим JavaScript 8. Интересные решения на JS Конечно, если я какие-нибудь ссылки пропустил, оповестите меня, и я добавлю эти ссылки.
UPD Стандарт экма на русском: http://javascript.ru/ecma
Очень важная тема! Filmzona — онлайн фильмы .
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Почему Алеко отказывается использовать jq? «POST данные для модулей системы »
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Quote (chu4___x )
Почему Алеко отказывается использовать jq?
Не вижу смысла использовать 100кб кода вместо 5кб кода. И не говорите что я не знаю, как замечательна эта библиотека - я начинал с неё и умею ей пользоваться, во всяком случае умел, многое уже позабыл). В доказательство довесок от меня: референс по JQuery в аттаче поста.
Бесплатные обои.
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Aleko , почему 100кб? 56кб . С каких пор 56кб стало много? У тебя шапка форума весит 44кб... может лучше убрать? Вдруг кэш переполнит... «POST данные для модулей системы »
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
А мой аватар весит 83кб. «POST данные для модулей системы »
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
chu4___x , не в этом дело) 5 всегда лучше чем 50 если разговор идет об оптимизации.Бесплатные обои.
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Всё равно не понимаю, скрипт всё равно в кэш загрузится... Зачем у тебя тогда библиотека в коде? Удали. «POST данные для модулей системы »
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
chu4___x , ucoz навязал.Бесплатные обои.
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Aleko , и... ? Заместо </head> Заместо </title> Правда вручную придётся поставить стиль для аякс окон...«POST данные для модулей системы »
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
chu4___x , так стоп, с этого места поподробнее)Бесплатные обои.
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Перед закрывающими тегами title или head система автоматически вставляет это. Code
<link type="text/css" rel="StyleSheet" href="/.s/src/layer3.css" /><script type="text/javascript" src="/.s/src/u.js"></script><style type="text/css">.UhideBlockL {display:none}</style>
Но мы можем это убрать . Но так как он уберёт и стили, то ставим их вручную.
Code
<link type="text/css" rel="StyleSheet" href="/.s/src/layer3.css" />
«POST данные для модулей системы »
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Но нет смысла его убирать, так как в нём все функции системы, авторизация и т.д «POST данные для модулей системы »
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
chu4___x , нужные функции мы можем подключить через свой скрипт.Бесплатные обои.
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Как это укоротить? Code
a = document.body; a.innerHTML = a.innerHTML.replace(/(П|п)(Р|р)(И|и)(В|в)е(Т|т)/g, '$1$2$3$4і$5'); a.innerHTML = a.innerHTML.replace(/(П|п)(Р|р)(И|и)(В|в)Е(Т|т)/g, '$1$2$3$4І$5');
aka Latro
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Code
a=document.body;a.innerHTML=a.innerHTML.replace(/(прив)(е)(т)/gi,function(a,b,c,d){return b+(c=='е'?'i':'I')+d});
Бесплатные обои.
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Aleko , я канеша понял, но объясни действие функции, чтобы дальше я сам мог такое делать)aka Latro
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
DSC , на пару символов короче:
Code
<script> a=document.body;a.innerHTML=a.innerHTML.replace(/(прив)(е)(?=т)/gi,function(a,b,c){return b+(c=='е'?'i':'I')}); // подробно: a=document.body; //определяем боди, это ясно a.innerHTML=a.innerHTML.replace(/(прив)(е)(?=т)/gi, // конструкция (?=т) не берет букву т в результат // поиска, но предполагает её наличие в тексте // флаг i подразумевает регистронезависимый поиск, тоесть // е совпадет и с 'е' и с 'Е'. function(a,b,c){ // a содержит всю найденную строку // b содержит первую подстроку (первые скобки) // с - вторую return b+(c=='е'?'i':'I') // возвращаем первую подстроку, то есть 'прив' // затем ставим условие: // ЕСЛИ c=='е' ТО 'i' ИНАЧЕ 'I' // т нам не нужно, так как оно не меняется вообще }); </script>
Бесплатные обои.
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Наверное можно ещё короче, но я не знаю как. Бесплатные обои.
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Aleko , понятно, а если мне нужно несколько букв перевести, а не только "е" на "i", как тогда делать?aka Latro
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
DSC , иди учи regExpБесплатные обои.
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Aleko , угу, я уже канеша врубаться начал, но а это уже впринцепи совсем другое, как сделать, чтобы оно работало: Code
<!docktype html> <head> <meta charset="utf-8"> <title>Тестовая страница</title> </head> <body> Текст 1 </body> <script language ="JavaScript"> function name1() { a = document.body; a.innerHTML = a.innerHTML.replace(/(текст) 1/gi, '$1 один') } </script> </html>
aka Latro
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Оужас...
Code
<script type="text/javascript"> (function(){ var area = document.body; area.innerHTML = area.innerHTML.replace(/1/i, 'один'); })(); </script>
«POST данные для модулей системы »
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
то, что там добавлено "Текст", там подразумевалось, что может быть что-угодно... Спасибо!) P.S. Ещё вопрос, как сделать если я в одной функции что-то обозначил, а потом хочу используя это "что-то" в другой функции ещё что-то изменить
aka Latro Сообщение отредактировал DSC - Среда, 25.11.2009, 22:41
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
chu4___x , сам то... флаг i для цифры??? Чтобы цифры в любом регистре подбирались чтоли? И где флаг g? Но про неймспейс неплохо)
Code
<script type="text/javascript"> (function(){ var area = document.body; area.innerHTML = area.innerHTML.replace(/1/g,'один'); })(); </script>
Бесплатные обои.
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Aleko , ага, у меня особая методика «POST данные для модулей системы »
WRC
Группа: Проверенные
Пользователь №: 223
Сообщений: 149
Получено оценок: 11
Как объединить несколько js файлов в один? Устраняем баг при просмотре материала
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
WRC , создаешь файл javascript.js , из нужных тебе js-файлов копируешь скрипты и вставляешь в javascript.js , разделяешь эти скрипты комментариями: Code
<script type='text/javascript'>//Скрипт номер 1 function script_1(){alert('lol1');}script_1(); //Скрипт номер 2 function script_2(){alert('lol2');}script_2(); /* Конец всех скриптов */</script>
Очень важная тема! Filmzona — онлайн фильмы .
WRC
Группа: Проверенные
Пользователь №: 223
Сообщений: 149
Получено оценок: 11
UnderShot , что то не получилось... не все скрипты работают... http://obucoz.org.ru/others/javascript.js что не так Устраняем баг при просмотре материала
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
WRC , консоль ошибок рулит.«POST данные для модулей системы »
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
chu4___x , на local.host $.post будет работать?Очень важная тема! Filmzona — онлайн фильмы .
WRC
Группа: Проверенные
Пользователь №: 223
Сообщений: 149
Получено оценок: 11
Quote (chu4___x )
WRC, консоль ошибок рулит.
P.S: я в js 0Устраняем баг при просмотре материала
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
WRC , смотри свой js код через firebugОчень важная тема! Filmzona — онлайн фильмы .
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
UnderShot , и куда ты постить собираешься ?«POST данные для модулей системы »
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
chu4___x , я просто хотел с компа постить на сайт) думаю не получится Очень важная тема! Filmzona — онлайн фильмы .
chu4___x
говорун
Группа: Проверенные
Пользователь №: 13
Сообщений: 211
Получено оценок: 19
Через AJAX нет, через простую форму да, но только где нет ssid. «POST данные для модулей системы »
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
chu4___x , ок, понялОчень важная тема! Filmzona — онлайн фильмы .
WRC
Группа: Проверенные
Пользователь №: 223
Сообщений: 149
Получено оценок: 11
UnderShot , спс... объединил... +)Устраняем баг при просмотре материала
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
ну, в общем вот такой вопрос, я хочу назначить первому тегу див цвет, вот я написал код:Code
<script type="text/javascript"> document.getElementByTagName('div').style.color='red'[0] </script>
Ну и как теперь мне сделать, чтоб цвет в нём стал красным??? aka Latro
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
DSC , Code
<script> function colorRed(){document.getElementByTagName('div').style.color='red';}colorRed(); </script>
Перед bodyОчень важная тема! Filmzona — онлайн фильмы .
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
UnderShot , да.., очень внимательно ты читаешь..., мне надо именно для первого! А ты просто убрал "[ 0 ] ", а остальное запихал в функцию...aka Latro
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
DSC , тогда так:Code
<script> function colorRed(){ document.getElementsByTagName('div')[0].style.color='red'; }colorRed(); </script>
Очень важная тема! Filmzona — онлайн фильмы .
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
UnderShot , ппц блин, писал точно такое-же, и не работало... оОaka Latro
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
DSC , getElements ByTagNameОчень важная тема! Filmzona — онлайн фильмы .
Aleko
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
чтобы не писать вот так: Code
<script> function colorRed(){ document.getElementsByTagName('div')[0].style.color='red'; }colorRed(); </script>
Можно писать так: Code
<script> (function(){ document.getElementsByTagName('div')[0].style.color='red'; })(); </script>
Бесплатные обои.
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Aleko , спасибо, возьму на заметкуОчень важная тема! Filmzona — онлайн фильмы .
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Aleko , я об этом знаю, много где видел...aka Latro
WRC
Группа: Проверенные
Пользователь №: 223
Сообщений: 149
Получено оценок: 11
как написать условку типо: если браузер ie то выполняется тота иначе выполняется тота... Устраняем баг при просмотре материала
UnderShot
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
WRC , Code
<script> var IE='\v'=='v'; if(IE) { // обработчик для IE броузера } </script>
Очень важная тема! Filmzona — онлайн фильмы .
Infamous
Группа: Проверенные
Пользователь №: 316
Сообщений: 158
Получено оценок: 21
Дайте ссылку, где можно почитать о сокращённых условных операторах в JS (пример: alert(e.length?'Yes':'No'); ) Сообщение отредактировал Infamous - Воскресенье, 03.01.2010, 10:23
DSC
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Infamous , http://docs.com.ru/js_1_1.php Смотри "Условные выражения"aka Latro