JavaScript & jQuery
UnderShot
Дата: Понедельник, 23.11.2009, 20:12 | Сообщение # 1
оратор
Группа: Модераторы
Пользователь №: 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 — онлайн фильмы.
  
UnderShot
Дата: Понедельник, 25.10.2010, 20:58 | Сообщение # 451
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Цитата (MegaFill)
так тоже
нужно.


Очень важная тема!
Filmzona — онлайн фильмы.
  
MegaFill
Дата: Понедельник, 25.10.2010, 21:21 | Сообщение # 452
шептун
Группа: Проверенные
Пользователь №: 3260
Сообщений: 79
Получено оценок: 8
Не люблю я коддить прост :D

Мой моушенhttp://vimeo.com/megafill
Креатив http://dailycreative.ru/
Веб разработка и тп http://devshack.ru/
  
Raiderr
Дата: Вторник, 26.10.2010, 00:31 | Сообщение # 453
болтун
Группа: Проверенные
Пользователь №: 673
Сообщений: 349
Получено оценок: 26
Цитата (MegaFill)
Не люблю я коддить прост

харошая отмазка, щас еще модно говорить "это мой первый раз"

Aleko, спасибо!


Новый кавер Jar of Hearts: http://www.youtube.com/watch?v=OLkXQMHVRhI

Сообщение отредактировал Raiderr - Вторник, 26.10.2010, 00:32
  
MegaFill
Дата: Вторник, 26.10.2010, 11:49 | Сообщение # 454
шептун
Группа: Проверенные
Пользователь №: 3260
Сообщений: 79
Получено оценок: 8
Цитата (Raiderr)
харошая отмазка, щас еще модно говорить "это мой первый раз"

Я по крайней мере хоть написал код, который работал. ^_^


Мой моушенhttp://vimeo.com/megafill
Креатив http://dailycreative.ru/
Веб разработка и тп http://devshack.ru/
  
Raiderr
Дата: Вторник, 26.10.2010, 15:56 | Сообщение # 455
болтун
Группа: Проверенные
Пользователь №: 673
Сообщений: 349
Получено оценок: 26
Цитата (MegaFill)
Я по крайней мере хоть написал код, который работал.

я же написал "СПАСИБО!", и это пиши не мне, а "пятикопеешнику" (не Алеку)


Новый кавер Jar of Hearts: http://www.youtube.com/watch?v=OLkXQMHVRhI

Сообщение отредактировал Raiderr - Вторник, 26.10.2010, 17:55
  
MegaFill
Дата: Вторник, 26.10.2010, 17:47 | Сообщение # 456
шептун
Группа: Проверенные
Пользователь №: 3260
Сообщений: 79
Получено оценок: 8
fear

Мой моушенhttp://vimeo.com/megafill
Креатив http://dailycreative.ru/
Веб разработка и тп http://devshack.ru/
  
Aleko
Дата: Вторник, 26.10.2010, 19:37 | Сообщение # 457
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Цитата (Raiderr)
не Алеку

мой ник не склоняется


Бесплатные обои.
  
DSC
Дата: Вторник, 26.10.2010, 20:13 | Сообщение # 458
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Aleko, дело в другом - он тебя пятикопеешником обозвал!

aka Latro
  
Aleko
Дата: Вторник, 26.10.2010, 20:13 | Сообщение # 459
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
DSC, не меня

Бесплатные обои.
  
UnderShot
Дата: Вторник, 26.10.2010, 20:31 | Сообщение # 460
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Я чтоль? оО

----------
Забыл…

Прикрепления: 0785248.jpg (28.0 Kb)


Очень важная тема!
Filmzona — онлайн фильмы.
  
DSC
Дата: Вторник, 26.10.2010, 23:28 | Сообщение # 461
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Aleko, может и не тебя, но написав что не тебя имел ввиду, он подсознательно обозвал тебя таковым...

aka Latro
  
Raiderr
Дата: Среда, 27.10.2010, 00:55 | Сообщение # 462
болтун
Группа: Проверенные
Пользователь №: 673
Сообщений: 349
Получено оценок: 26
Цитата (UnderShot)
Я чтоль? оО

Цитата (UnderShot)
нужно.

нет, ты что?!.


Новый кавер Jar of Hearts: http://www.youtube.com/watch?v=OLkXQMHVRhI

Сообщение отредактировал Raiderr - Среда, 27.10.2010, 00:56
  
Aleko
Дата: Среда, 27.10.2010, 01:13 | Сообщение # 463
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
$WARNING$Закончили.

Бесплатные обои.
  
UnderShot
Дата: Четверг, 04.11.2010, 20:24 | Сообщение # 464
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Пишу highlighter, но плохо получается подсветить regexp’ы:
Code
1/([\,\(\[\+\-=\:\?\{])(\s*)(\/(?=[^\*])[^\n\r<>]+?\/[img]{0,3})/gi
Кто знает, как правильно написать регулярку для самих регэкспов?


Очень важная тема!
Filmzona — онлайн фильмы.
  
UnderShot
Дата: Четверг, 04.11.2010, 20:27 | Сообщение # 465
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Т.е подсветка идет до первого «\/».
UPD:


Очень важная тема!
Filmzona — онлайн фильмы.
  
DSC
Дата: Четверг, 04.11.2010, 20:51 | Сообщение # 466
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
UnderShot

aka Latro
  
Aleko
Дата: Пятница, 05.11.2010, 00:43 | Сообщение # 467
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
Цитата (UnderShot)
Пишу highlighter, но плохо получается подсветить regexp’ы:

Красавец. Я с этой проблемой сам долго боролся.

Решение:

1. с помощью регулярки В САМОМ НАЧАЛЕ ОБРАБОТКИ выдираем регекспы и заменяем их на спецтеги:

Code
1/(\,|\+|\=|\||&|>|<|\:|\?|\(|\[|\{)(\s*)(\/(?=[^\*])(\\\/|\\Q.*?\/.*?\\E|[^\/<>\n\r])+\/|\/\/)([gim]{0,3})/gi

2. обрабатываем код
3. заменяем спецтеги обратно на регекспы


Бесплатные обои.
  
UnderShot
Дата: Пятница, 05.11.2010, 09:15 | Сообщение # 468
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
DSC, не прет.
Aleko, вот у меня идет такая замена:… в начале замен:
Code
1.replace(/([\,\(\[\+\-=\:\?\{])(\s*)(\/(?=[^\*])[^\n\r<>]+?\/[img]{0,3})/gi,function(a,b,c,d){
2  r.reg.push(d)
3  return b+"~~~REGEXP"+r.reg.length+"~~~"
4})
Code
1for(var i=0;i<r.reg.length;i++){
2  a=a.replace("~~~REGEXP"+(i+1)+"~~~",t.addColor(["regexp",t.removeStyle(r.reg[i])]))
3};


Очень важная тема!
Filmzona — онлайн фильмы.
  
UnderShot
Дата: Пятница, 05.11.2010, 09:16 | Сообщение # 469
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Aleko, сделал по твоему регу, все отлично) Спасибо большое!
beer


Очень важная тема!
Filmzona — онлайн фильмы.
  
UnderShot
Дата: Пятница, 05.11.2010, 14:12 | Сообщение # 470
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Code
1<script>
2/* проверка
3  * © 2010, UnderShot
4  *
5  *  
6  *  
7*/
8</script>


Очень важная тема!
Filmzona — онлайн фильмы.
  
UnderShot
Дата: Среда, 10.11.2010, 17:53 | Сообщение # 471
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Code
1<script>a = //gi //коммент
2b = ['///////', // коммент
3/reg/, {c:new RegExp('\/\/[\\\\]\/\/')}]</script>


Очень важная тема!
Filmzona — онлайн фильмы.
  
Just_
Дата: Понедельник, 15.11.2010, 19:13 | Сообщение # 472
молчун
Группа: Проверенные
Пользователь №: 1418
Сообщений: 19
Получено оценок: 4
Привет всем.
Мне понадобилось повернуть картинку на опрделенное кол-во градусов.

Как это можно реализовать?

  
UnderShot
Дата: Понедельник, 15.11.2010, 20:03 | Сообщение # 473
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
http://plugins.jquery.com/plugin-tags/

Очень важная тема!
Filmzona — онлайн фильмы.
  
Just_
Дата: Понедельник, 15.11.2010, 20:23 | Сообщение # 474
молчун
Группа: Проверенные
Пользователь №: 1418
Сообщений: 19
Получено оценок: 4
UnderShot,
Цитата
Page not found

Я вот нашел плагин jQueryRotate. Вроде то что нужно.
-----
А почему он не сжимается здесь?
Как его вес можно уменьшить?

  
UnderShot
Дата: Понедельник, 15.11.2010, 21:55 | Сообщение # 475
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
http://closure-compiler.appspot.com/home

Очень важная тема!
Filmzona — онлайн фильмы.
  
CoolSenpai
Дата: Понедельник, 15.11.2010, 22:14 | Сообщение # 476
говорун
Группа: Проверенные
Пользователь №: 2213
Сообщений: 116
Получено оценок: 24
Нашел интересный плагин,хотелось бы его реализовать на uCoz.

тык

  
UnderShot
Дата: Понедельник, 15.11.2010, 22:57 | Сообщение # 477
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
CoolSenpai, пфф, скачай скрипт, и все.

Очень важная тема!
Filmzona — онлайн фильмы.
  
Just_
Дата: Суббота, 20.11.2010, 19:18 | Сообщение # 478
молчун
Группа: Проверенные
Пользователь №: 1418
Сообщений: 19
Получено оценок: 4
UnderShot,
Спасибо.

Сталкнулся еще с одной проблемой.
Нужно сделать подписи картинок при наведении мышкой.

Решение проблемы нашел в плагине Captify, но столкнулся с проблемой:
Как выровнять картинки в одну строку.
На оф. сайте сказано, что это делается так:


Но получается вот что:

Как сделать нормально?
Или возможно есть более легкое решение чем Captify?

тест сайт

Прикрепления: 3396339.jpg (28.4 Kb)


Сообщение отредактировал Just_ - Суббота, 20.11.2010, 19:19
  
DSC
Дата: Воскресенье, 05.12.2010, 14:22 | Сообщение # 479
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
чёто я вообще туплю, как сделать чтобы число 1000000, стало таким: 1 000 000

число может быть любым, не обязательно такое!


aka Latro
  
cool09
Дата: Воскресенье, 05.12.2010, 15:12 | Сообщение # 480
молчун
Группа: Проверенные
Пользователь №: 3145
Сообщений: 33
И снова наткнулся на одну проблемку...
Хотел установить на сайт хинт примерно с таким стилем и джаваскриптом
Code
1/* hint menu */     
2.hint {
3background-color: #252525;
4line-height: 10px;
5color: #ffffff;
6font-family: Verdana;
7font-size: 10px;
8width: auto;
9border: 2px solid #6cc30e;
10margin: 1px;
11padding: 7px;
12position: absolute;
13visibility: hidden;}
14/* ---------------- */

Code
1//Hint Start     
2// CLASS : MW_System_Load     
3// Init     
4function MW_System_Load(){     
5this.wib = screen.width;     
6this.heb = screen.height;     
7this.documes = (document.getElementById || document.createElement || document.getElementsByTagName) ? true : false;     
8this.objects = window.addEventListener || window.attachEvent ? window : document.addEventListener ? document : null;     
9this.types = 'load';     
10}     
11MW_System_Load.prototype.addsevent = function(func){     
12if(this.objects.addEventListener){     
13this.objects.addEventListener(this.types,func,false);     
14return true;     
15} else if (this.objects.attachEvent){     
16this.objects.attachEvent("on" + this.types,func);     
17} else {     
18return false;     
19}     
20}     
21MW_System_Load.prototype.browser = function(){     
22this.ver = navigator.appVersion;     
23this.agent = navigator.userAgent.toLowerCase();     
24this.dom = document.getElementById ? 1:0;     
25this.all = document.all ? 1:0;     
26this.ie5 = (this.ver.indexOf("MSIE 5")>-1 && this.dom) ? 1:0;     
27this.ie6 = (this.ver.indexOf("MSIE 6")>-1 && this.dom) ? 1:0;     
28this.ie4 = (document.all && !this.dom) ? 1:0;     
29this.ie = this.ie4 || this.ie5 || this.ie6;     
30this.opera = this.agent.indexOf("opera")>-1;     
31this.gecko = (this.agent.indexOf("gecko")!=-1) ? 1:0;     
32this.bw = (this.ie || this.opera || this.gecko);     
33return this;     
34}     
35MW_System_Load.prototype.findobj = function(obj){     
36this.parent = window.document;     
37if(this.parent[obj]){ return this.parent[obj]; }     
38if(this.parent.all && this.parent.all[obj]){ return this.parent.all[obj]; }     
39if(this.parent.layers && this.parent.layers[obj]){ return this.parent.layers[obj]; }     
40if(this.parent.getElementById && this.parent.getElementById(obj)){ return this.parent.getElementById(obj); }     
41return null;     
42}     
43var MW = new MW_System_Load();     
44function MW_System_Hint(){}     
45MW_System_Hint.prototype.show = function(obj,str){     
46var hint = MW.findobj('hint');     
47if(!obj){ return; }     
48if(!MW.documes){ return; }     
49if(!hint){ return; }     
50hint.className = 'hint';     
51hint.style.left = 15;     
52hint.style.top = 50;     
53
54obj.onmouseout = function(advance){     
55hint.style.width = '';     
56hint.style.visibility = 'hidden';     
57if(hint.firstChild) hint.removeChild(hint.firstChild);     
58hint.appendChild(document.createTextNode(str));     
59};     
60obj.onmousemove = function(advance){     
61//str = str.replace(/</g,"<");     
62//str = str.replace(/>/g,">");     
63hint.style.width = '';     
64hint.innerHTML = str;     
65vc = document.getElementsByTagName((document.compatMode && document.compatMode=="CSS1Compat") ? "HTML":"BODY")[0];     
66x = window.event ? event.clientX + vc.scrollLeft : advance.pageX;     
67y = window.event ? event.clientY + vc.scrollTop : advance.pageY;     
68vcwidth = vc.clientWidth ? vc.clientWidth + vc.scrollLeft : window.innerWidth + window.pageXOffset;     
69vcheight = vc.innerHeight ? window.innerHeight + window.pageYOffset : vc.clientHeight + vc.scrollTop;     
70         if(hint.offsetWidth>500){ hint.style.width = '200'; }     
71         if((x + hint.offsetWidth + 15) > vcwidth){     
72          hint.style.left = x - hint.offsetWidth - 4;     
73         } else {     
74          hint.style.left = x + 15;     
75         }     
76         if((y + hint.offsetHeight + 19) > vcheight){     
77          hint.style.top = y - hint.offsetHeight;     
78         } else {     
79          hint.style.top = y + 25;     
80         }     
81         //if(typeof(hint.style.MozOpacity)!="undefined"){     
82         hint.style.opacity = '.91';     
83         hint.style.filter = "alpha(opacity:91)";     
84         //}     
85         hint.style.visibility = 'visible';     
86};     
87}     
88MW_System_Hint.prototype.initialize = function(){     
89var hint = document.createElement("DIV");     
90hint.setAttribute('id','hint');     
91document.getElementsByTagName('body')[0].appendChild(hint);     
92hint.style.visibility = 'hidden';     
93var hintmarker = ['a','img','img','input','span','div','textarea'];     
94var textmarker = ['title','alt','title','title','title','title','title'];     
95var lenmarker = hintmarker.length;     
96for(var i=0; i<lenmarker; i++) {     
97atr = document.getElementsByTagName(hintmarker[i]);     
98for(var j=0; j<atr.length; j++)     
99if(viewhint=atr[j].getAttribute(textmarker[i])){     
100         atr[j].removeAttribute(textmarker[i]);     
101         HINT.show(atr[j],viewhint);     
102}     
103}     
104}     
105var HINT = new MW_System_Hint();     
106if(MW.objects){ MW.addsevent(HINT.initialize); }     
107//Hint End

и тут возникла сама проблема - в обоих браузерах - опера и мозила - пункты меню после наведения на них курсора становятся в положение hover и так и остаются(
см. скрин

Вообщем кто, что знает по данному вопросу

Вот код меню, на всякий случай

Code
1<td style="border: 1px solid rgb(255, 255, 255);"><table align="center" width="998"><tbody><tr><td bgcolor="#7878ae" valign="top" width="198"><table width="100%"><tbody><tr><td class="copy">
2<div title="Главная" class="menu1" onmouseover="this.className='menu2';" onmouseout="this.className='menu1';" onclick="location.href='$HOME_PAGE_LINK$'; "><div class="otst">Главная</div></div>
Code
1.menu1 {
2background : url(/design_files/menu0000.gif) no-repeat;
3width : 187px;
4height : 22px;
5font : 11px tahoma;
6font-weight : bold;
7color : #525151;
8margin-top : 2px;
9cursor : pointer;
10}
11.menu2 {
12background : url(/design_files/menu2000.gif) no-repeat;
13width : 187px;
14height : 22px;
15font : 11px tahoma;
16color : #525151;
17font-weight : bold;
18margin-top : 2px;
19cursor : pointer;
20}
Прикрепления: 5277759.gif (16.7 Kb)


я пережил запуск большого адронного коллайдера(=

Сообщение отредактировал cool09 - Воскресенье, 05.12.2010, 15:24
  
Aleko
Дата: Воскресенье, 05.12.2010, 17:19 | Сообщение # 481
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
cool09, ховер в меню реализован скриптом. Тултипы - гавно и переписывают стандартные события - соответственно ховер отваливается. Юзай мои тултипы.

Код:

Code
1(function(rightIndent,topIndent,growTop,opacity,time){
2  $('*').bind('mouseover',function(_){
3   (function(t,o,h,w,e,m,d){
4    if(o.title){
5     o .t=o.title;
6     o.title='';
7     o.alt='';
8     document.body.appendChild(
9      e=document.createElement('div'),
10      e.innerHTML='<span></span><div>'+o.t+'</div>',
11      e.style.cssText='filter:alpha(opacity=0);opacity:0;top:-9999px;left:-9999px;',
12      e.className='tip',
13      e);
14     if(growTop)e.style.marginTop=-e.offsetHeight+'px';
15     m=function(t){
16      t=t||event;
17      e.style.top=(document.documentElement.scrollTop||document.body.scrollTop)+t.clientY-topIndent+'px';
18      e.style.left=(document.documentElement.scrollLeft||document.body.scrollLeft)+t.clientX+rightIndent+'px';
19      };
20     d=function(){
21      $(o).unbind('mouseout',d);
22      o.title=o.t
23      $(e).animate({opacity:0},time,function(){
24       document.body.removeChild(e);
25       $(document).bind('mousemove',m);
26       });
27      };
28     $(o).bind('mouseout',d);
29     $(document).bind('mousemove',m);
30     $(e).animate({opacity:opacity},time);
31     }
32    })(_||event,_.target||_.srcElement)
33   });
34  })(15,8,false,1,200);
35

Стили:

Code
1/* tip */
2.tip{position:absolute;}
3.tip div{background:#555046;padding:3px 6px 5px 6px;color:#ccc;margin-left:4px;font-weight:700;}
4.tip span {}
5/* -- -- */


Бесплатные обои.
  
cool09
Дата: Воскресенье, 05.12.2010, 19:50 | Сообщение # 482
молчун
Группа: Проверенные
Пользователь №: 3145
Сообщений: 33
Aleko, о, спасибо ^_^

я пережил запуск большого адронного коллайдера(=
  
Anne_nox
Дата: Воскресенье, 12.12.2010, 22:21 | Сообщение # 483
молчун
Группа: Пользователи
Пользователь №: 3332
Сообщений: 1
Добрый вечер. Хотелось бы получить пару ответов на пару вопросов, была бы очень благодарна! В HTML и CSS разбираюсь достаточно хорошо, с юкозом возобновила работу недавно, покинула его незадолго до обновления, а вот с JS совсем не дружу, надеюсь на понятное объяснение. Так же мало работала в HTML'e с формами и их обработкой т.к. просто не было необходимости :)




У меня есть несколько однотипных задач которые мне бы хотелось у себя реализовать на форуме.

1.Очень нужно, что бы в одном из разделов форума темы создавались по другому шаблону нежели обычные темы в других разделах. Т.е. что бы была другая форма создания темы. Так же в отдельном разделе хотелось бы иметь иную форуму добавления ответа. Как это можно сделать?
И еще один вопрос сюда же, не бейте если я не права, но ведь у юкоза для уже существующих граф формы есть условные операторы? Если я добавлю другие графы в форму и у них не будет этих операторов, как можно потом впихнуть эти обработанные куски в нужное место? Возможно это действительно смешно, но...

2.Фактически нужен второй набор смайлов. На самом деле там будут ленточки, но думаю это не важно. Мне нужно что бы они показывались в аякс окне и при этом от смайлов были отдельны, но с тем же принципом - для вставки в сообщение. Хочется что бы окно открывалось по клику на что ни будь в панели ББ-кодов.

Большое спасибо за такой образцовый сайт, замечательные работы и другие полезности!)

  
DSC
Дата: Понедельник, 13.12.2010, 15:47 | Сообщение # 484
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
небольшая функция, которая расширяет возможности document.createElement
Code
1<script type=text/javascript>
2function createElement(ob,pa,cs){
3var ob=document.createElement(ob);
4if(!!pa||1&&!!cs||1){
5if(!!pa)for(var i in pa)if('style'!=i)ob[i]=pa[i];
6if(!!cs)for(var j in cs)if('cssText'!=j)ob.style[j]=cs[j]
7}
8return ob
9}
10</script>
использовать так:
Code
1<script type=text/javascript>
2createElement(tag[,properties][,css]);
3</script>
пример:
Code
1<script type=text/javascript>
2createElement('div',{
3innerHTML:'mytext',
4className:'myclass'
5},{
6background:'blue',
7color:'red'
8});
9</script>


aka Latro
  
DSC
Дата: Среда, 22.12.2010, 16:29 | Сообщение # 485
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
решил переписать easy, вот составил регексп для единичной выборки:
Code
1/^(\w+)?(?:[.#]([\w-]+)|\[([\w-]+)(.?=)['"]?(.*?)["']?\]|:([\w-]+)(?:\((.*?)\))?)?/
проверьте его, всё ли нормально пашет(единичная это без иерархии)

п.с.:кстати баги в прошлых версиях были в поиске только из-за неправильного регекспа... ахереть... <_<


aka Latro

Сообщение отредактировал DSC - Среда, 22.12.2010, 16:31
  
Aleko
Дата: Среда, 22.12.2010, 22:04 | Сообщение # 486
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
DSC, я в этом неплохо разбираюсь и тем не менее по такой длинной регулярке не просто сразу определить, что под неё должно подходить. Ты бы хоть примеры привел.

Бесплатные обои.
  
DSC
Дата: Среда, 22.12.2010, 23:08 | Сообщение # 487
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Aleko, да там всё нормально, я уже сделал псевдоклассы и атрибуты, кстати выборку ускорил и уменьшил хорошо! king
регулярку исправил немного:
Code
1/*
2    --тэг--  айди и класс  --------атрибуты--------  ---псевдо-классы---
3/^([\w*]+)?([.#]([\w-]+)|\[([\w-]+)((.?)=(.*?))?\]|:([\w-]+)(?:\((.*?)\))?)?/
4*/
проверь просто match'ем.


aka Latro
  
DSC
Дата: Пятница, 24.12.2010, 00:08 | Сообщение # 488
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
как сделать, чтобы если псевдо запихнуто в псевдо, то скопки вложенного псевдо пропускались, нужно сделать это в регекспе

aka Latro
  
DSC
Дата: Суббота, 25.12.2010, 00:17 | Сообщение # 489
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
вот строка: :pseudo(:pseudo2(text:ggg(ddd):nth(2n+2)):not(div))[attr=bar]:nnn(=))
не получается составить нормальный регексп для определения первого псевдо-класса и его содержимого
как вообще это сделать, я уже всю голову себе сломал из-за этой херни...


aka Latro
  
UnderShot
Дата: Суббота, 25.12.2010, 05:25 | Сообщение # 490
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Code
1":pseudo(:pseudo2(text:ggg(ddd):nth(2n+2)):not(div))[attr=bar]:nnn(=))".match(/(\:\w+\(.+\))/g)
?


Очень важная тема!
Filmzona — онлайн фильмы.
  
DSC
Дата: Суббота, 25.12.2010, 12:22 | Сообщение # 491
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
UnderShot, нет, там между внешними псевдо-классами находится атрибут!

aka Latro
  
UnderShot
Дата: Суббота, 25.12.2010, 16:44 | Сообщение # 492
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
?

Очень важная тема!
Filmzona — онлайн фильмы.
  
DSC
Дата: Суббота, 25.12.2010, 20:50 | Сообщение # 493
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
UnderShot, ты вообще читал то, что мне нужно? confused

aka Latro
  
UnderShot
Дата: Воскресенье, 26.12.2010, 08:43 | Сообщение # 494
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
DSC, да, тебя тяжело понять.

Очень важная тема!
Filmzona — онлайн фильмы.
  
DSC
Дата: Воскресенье, 26.12.2010, 11:31 | Сообщение # 495
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
UnderShot:
:pseudo(:pseudo2(text:ggg(ddd):nth(2n+2)):not(div))[attr=bar]:nnn(=))
мне нужно получить то, что выделино жирным, а важнее всего то, что красным!


aka Latro
  
UnderShot
Дата: Воскресенье, 26.12.2010, 12:16 | Сообщение # 496
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
Code
1var str=":pseudo(:pseudo2(text:ggg(ddd):nth(2n+2)):not(div))[attr=bar]:nnn(=))",m=[];
2str.replace(/(\:\w+\(([^\[\]]+)\))/g,function(a,b,c){
3  m.push(c)
4});
5alert(m.join("\n"))


Очень важная тема!
Filmzona — онлайн фильмы.
  
DSC
Дата: Воскресенье, 26.12.2010, 12:57 | Сообщение # 497
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
UnderShot, єтот вариант можно додумать, но всё-равно не то, мне нужно регуляркой сделать, и я уже вроде додумался как буду делать!
Но если будут вариант, напишите, может ваши варианты будут лучше!


aka Latro
  
UnderShot
Дата: Воскресенье, 26.12.2010, 13:02 | Сообщение # 498
оратор
Группа: Модераторы
Пользователь №: 45
Сообщений: 923
Получено оценок: 85
DSC, почему не подходит?

Очень важная тема!
Filmzona — онлайн фильмы.
  
Aleko
Дата: Воскресенье, 26.12.2010, 13:11 | Сообщение # 499
Watching you
Группа: Администраторы
Пользователь №: 2
Сообщений: 1621
Получено оценок: 167
DSC, почему просто не использовать привязку к началу строки? (слишком просто, явно я чего то не понял..)

Бесплатные обои.
  
DSC
Дата: Воскресенье, 26.12.2010, 14:08 | Сообщение # 500
спикер
Группа: Проверенные
Пользователь №: 127
Сообщений: 516
Получено оценок: 41
Aleko, вот.
ошибка тут не пропадает!


aka Latro
  
Поиск:
© Studioad.ru 2006 · 2010. Использование материалов форума на сторонних ресурсах без прямой обратной ссылки строго запрещено. Хостинг от uCoz.