While как условные выражения
можете мне объяснить как с ними работать чтобы использовать как условные выражения и как цикл, просто много где такое видел...
ну и собственно вот почему я создавал эту тему: var p=document, t=p.all||p.getElementsByTagName('*'), i=0; while(d=t[i++])if(d.className=='myclass')d.style.color='red' Как можно сократить данную запись? |
Для сокращения есть обфускаторы, не корёжьте код, вам его читать потом.
|
Kolyaj, дело в том, что while можно использовать как условки, и поэтому мне интересно как так сделать чтобы не писать условку дополнительно...
|
i = t.length; while(i--)… |
Я вообще не понимаю о чём вы. while выполняется пока выражение в скобках истинно. О каких условках вы говорите не понятно.
|
exec, это просто отсчёт с конца... это давно мне известно и понятно...
Kolyaj, я имею ввиду, возможно ли сделать, что бы while в моём варианте просматривая все теги, заодно проверял, равен ли их класс указанному, но сделать это именно через while, чтобы не писать этот назойлевый if |
Цитата:
|
Latro, можно использовать метод getElementsByClassName, но он встроен не во все браузеры.
|
exec, ну, еслибы я не знал об этом, то я не спрашивал, так значит вы не знаете каких либо вариантов сделать такой поиск?
|
Latro,
вы некомпетентны, глупы, и настойчивы. |
Latro, ну почему не знаем. Его просто нету.
|
Latro,
вы семантику цикла while понимаете? Как только условие ложно, цикл заканчивается. |
Gvozd, я настойчив, т.к. видел подобное в коде у людей, и мне интересно знать как это сделать! А если вы не можете написать никаких вариантов, а только грубите, то я глуп на столько же, на сколько и вы!
exec, ну ладно, спс, буду экспериментировать!) |
var p=document, t=p.all||p.getElementsByTagName('*'), i=0; while(d=t[i++] && (d.className=='myclass' ? d.style.color='red' : 1)); оно? |
Riim, неа, даже если заменить d на t[i++], то он задаёт цвет только последнему...(
|
Riim,
Какой кошмар :) |
Скобки забыл:
var p=document, t=p.all||p.getElementsByTagName('*'), i=0, d; while((d=t[i++]) && (d.className=='myclass' ? d.style.color='red' : 1)); Цитата:
|
Riim, не, ну вообще работает, но что-то запредельное, в массив добавить не получается...
В общем спасибо, буду разбираться) |
while ((d=t[i++]||{}).className=='myclass'&&(d.style.color='red') || d.style); можно еще так, но это уже совсем издевательство над тем кто это будет читать =) |
Цитата:
в любом случае не все что вы видели у кого-то стоит повторять |
Gvozd, когда пробывал, оно просто напросто не работало, вот я и решил узнать по подробнее об использование данного цикла как условку
|
покажите кусок кода, который вас так разволновал.
возможно вы его не так поняли, а возможно, он очень плох, и не стоит повторения PS пожалуйста перестаньте применять слово "условка". такого слова нету в нашем языке |
Gvozd, я уже во всём разобрался, а как мне тогда называть if else
|
Цитата:
|
Часовой пояс GMT +3, время: 13:04. |