Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

Открыть новую тему     Написать ответ в эту тему

DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
через css3 не хотите?

не кросбраузерно
а jquery грузить на сайт из четырех страниц, кажется нерациональным использованием ресурсов.

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 22:46 20-12-2012
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DarkSmoke
var els = document.getElementById('menu').getElementsByTagName('li');
for(var i = 0; i < els.length; i++)
if (i%2) els[i].className = 'имя класса';


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:12 20-12-2012
DarkSmoke



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
не работает ((
Не меняет цвет текса и фона

Код:
 
.even {color: red !important; background: #343434 !important;}
 


Код:
 
    <script type="text/javascript">
        var els = document.getElementById('menu').getElementsByTagName('li');
        for(var i = 0; i < els.length; i++)
        if (i%2) els[i].className = 'even';
    </script>
 


Код:
 
<div id="menu">
    <ul>
        <li><a href="#">ДЕТИ</a></li>
        <li><a href="#">АРТИСТЫ</a></li>
        <li><a href="#">ПОРТРЕТ</a></li>
        <li><a href="#">СВАДЬБА</a></li>
        <li><a href="#">РАЗНОЕ</a></li>
    </ul>
</div>
 

Всего записей: 962 | Зарегистр. 08-10-2005 | Отправлено: 23:41 20-12-2012 | Исправлено: DarkSmoke, 23:41 20-12-2012
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DarkSmoke

Цитата:
Не меняет цвет текса и фона  

http://jsfiddle.net/y7BGn/
разберитесь с css для себя - color это цвет текста, а не ссылки
 
ps: ну и скрипт должен быть запущен тогда, когда уже есть элементы на странице.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:51 20-12-2012 | Исправлено: Cheery, 23:52 20-12-2012
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Прошу в помощи в задании по JS.
 
Последовательно вводятся 4 значения. Необходимо, чтобы после ввода, значения были сформированы в нумерованный список, маркированный список, в таблицу 2х2, а затем все эти списки и таблицы должны быть выведены в HTML.
 
К сожалению, сейчас нет дословного задания. Но мне достаточно лишь показать как же введенные значения оформить списком. Ведь переменные из JS блока нельзя передать в HTML...

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 17:28 14-02-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MoLnuS

Цитата:
нельзя передать в HTML

почему это нельзя?  
вы можете создать заранее html список и заполнить его с помощью javascript..
конечно это будет "мухлеж" и подразумевалось, наверно, создание списка тем же javascript.
а тут два способа - вы можете создавать его честно, через DOM или же создать его в виде html кода и вставить его в страницу.  
что вызывает сложности?

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:01 14-02-2013
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
почему это нельзя?  
вы можете создать заранее html список и заполнить его с помощью javascript..
конечно это будет "мухлеж" и подразумевалось, наверно, создание списка тем же javascript.
а тут два способа - вы можете создавать его честно, через DOM или же создать его в виде html кода и вставить его в страницу.  
что вызывает сложности?

Собственно, через DOM и вызывает сложности(хотя как заполнить заранее созданный список-тоже не совсем представляю..). В интернетах смог найти лишь пару примеров подобного, там мало что понял.
Не могли бы Вы показать на небольшом примере оба предложенных способа? Первый, т.к. скорей всего он и требуется и второй для общего развития так сказать)

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 05:37 15-02-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MoLnuS

Цитата:
второй для общего развития так сказать

создаете строку с html кодом (так же, как и был бы в странице), после чего вставляете его в какой нить блочный элемент и все
<div id='test'></div>
 
код  
var str = '<b>Я здесь</b>';
document.getElementById('test').innerHTML = str;
 
насчет первого  
получаете значения в массив.. потом начинаете создавать элементы
var ul = document.createElement('ul');
 
создаете в цикле li элементы  
var li = document.createElement('li');
 
заполняете его значением
li.innerHTML = 'какое то значение';
 
присоединяете этот элемент к родительскому ul
ul.appendChild(li);
 
создаете новый li, заполняете его, присоединяете... и так далее.
 
когда список готов, то цепляете его либо к странице, либо, опять, к блочному элементу.
document.getElementById('test').appendChild(ul);
 
вот и все
 
аналогично делается с таблицами, собираются по частям
http://pihpi.ru/javascript-sozdat-html-tablicu

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 06:47 15-02-2013
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery

Цитата:
вот и все  

Огромное спасибо!=))) Помогло=) Отдельное спасибо, что всё с разъяснениями. Теперь, надеюсь, изучение JS должно пойти чуть полегче.
Почти точно, еще вернусь сюда с новыми вопросами

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 15:10 15-02-2013 | Исправлено: MoLnuS, 15:12 15-02-2013
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Я возвратился с новым вопросом. Скорей даже математическим, но т.к. осуществить его на JS надо, пишу сюда =)
 
Суть такая. Есть формула, кояя выглядит вот так: (x+Pi)8.
Используя её, необходимо создать последовательность случайных(якобы) чисел, изменяя x на dx (в цикле при каждом шаге: x=x+dx,  и затем в формулу уже новый икс. Икс должен быть в пределах (0,1) ). Создать последовательность вышло почти без проблем.  
Но есть еще одно задание. Нужно программно вычислить такое минимальное(!) значение dx, при котором в получаемом по формуле числе гарантировано бы изменялась его целая часть. При чем, вводится только значение X.
 
Я в математике не отличник, хорошист =)) Но пока понять не смог, как блин вообще подойти к этому делу...=\\\ Надеюсь, кто-нибудь поможет, желательно с разъяснением, что и почему..=)

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 10:40 02-03-2013 | Исправлено: MoLnuS, 10:42 02-03-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MoLnuS
ну а какое это имеет отношение к js ?)
 
ну пусть (x+pi)^8 чему то равно..
возьмите ceil (округление вверх) этого числа (пусть получится A)
отсюда
x + dx + pi = A^(1/8)
dx = A^(1/8) - x - pi
вот и все, собственно.. dx должно быть больше или равно этой величине
 
ps: лучше больше, так как при вычислении с плавающей запятой довольно много "ошибок"..
на js это будет выглядеть как
dx = Math.pow(Math.ceil(Math.pow(x + Math.PI, 8)), 1/8) - x - Math.PI;

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 11:02 02-03-2013 | Исправлено: Cheery, 11:20 02-03-2013
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery
Извиняюсь, да, все же куда-то не сюда надо было писать)
 
Что-то я не понял со степенями=\\
Почему там А в 1/8?
 
А в итоге, в коде, сначала возводим в 8, затем округляем, а потом снова в 1/8?
 
Добавлено:
И не работает сей метод=((( Делал так, вместо ввода dx присвоил ему, указанное выше выражение и все. Остальное как и было в первом задание. Целая часть меняется лишь примерно через 3-5 шагов..

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 12:05 02-03-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MoLnuS

Цитата:
И не работает сей метод

или у вас проблема с руками?
http://jsfiddle.net/xmbma/
небольшая проблема может возникать, как и сказал, из за точности вычислений с плавающей точкой..
для этого dx можно домножить на какой нибудь коэффициент, а формула выше была чисто математической.
например так http://jsfiddle.net/xmbma/1/

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 17:27 02-03-2013 | Исправлено: Cheery, 17:34 02-03-2013
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Странно, dx  у меня идентичный тому, что и в Вашем примере выходил..
Чуть позже еще раз по коду пройдусь, поищу ошибку.. Думаю. найду=)
 
Видимо, у меня все же проблемы с руками, да Извините за излишнее беспокойство.  
Спасибо за помощь
 
Добавлено:
Нашел опечатку в коде.
Но вот с формулой, по-моему, все же что-то не так..=\
 
Вводим икс= 0.1. Затем икс становится равным 0.1000069401358891, потом икс = 0.1000401738473137. И вот после этого значения икса,  DX выходит нулевым (как в обеих Ваших прогах, так и в моей). И последующие числа выходят одинаковыми...
 
 
зы: так и не понял значение формул в коде=\

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 17:54 02-03-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MoLnuS

Цитата:
Затем икс становится равным 0.1000069401358891

откуда?
вы получаете условие на dx, которое не должно быть меньше чего то..
вы же в упор пытаетесь сделать так, чтобы на каждом шагу получалось "целое" число - зачем?
 
ps: и зачем вам вообще сдалось изменение целой части?

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 22:37 02-03-2013 | Исправлено: Cheery, 22:51 02-03-2013
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery

Возможно, я не так как-то объяснил..=\
 

Цитата:
Нужно программно вычислить такое минимальное(!) значение dx, при котором в получаемом по формуле числе гарантировано бы изменялась его целая часть.
 
Т.е. вводим ИКС, затем вычисляем для этого ИКСа DX, такое, чтобы после изменения X на DX и подстановки в формулу изменилась бы целая часть получаемого числа. Как-то так.
А по данной формуле выходит, что DX в определенный момент становится нулю равный.

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 08:18 03-03-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MoLnuS

Цитата:
А по данной формуле выходит, что DX в определенный момент становится нулю равный.

потому что вы не можете считать с бесконечной точностью  
если у вас число уже близко к единице, то извлекая корень восьмой степени вы теряете точность в разрядах..  
 

Цитата:
Возможно, я не так как-то объяснил

я все понял, только не понял зачем вам этот dx вообще сдался.. генератор случайных чисел не делает такие проверки.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 08:20 03-03-2013
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery
Таки сделаю то, что давно надо было. Опубликую исходники)))
 
Вот первая задачка. Здесь было необходимо просто подставить все в формулу, вводя и ИКС и ДИКС.
 
Вот вторая, в которой уже вводится только ИКС, а с ДИКСом по формуле.
В плане задания вроде бы все верно? Мог перепутать местами строчки подсчета DX и X, путался  с этим н-ое время..
 
Вот не понимаю результат выполнения второй. Если дальше второго\третьего шага теряется ДИкс, то что вообще делать? Ведь минимальный ДИКС, который необходим для изменения целой части числа есть по-любому...  На втором шаге, при икс=0.1 он мин.DX=0.000000000002 (ну понятно да, почему оно в ноль уходит..).

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 08:32 03-03-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MoLnuS
я все равно не понимаю зачем вам вообще нужен dx.. генератор случайных чисел берет дробную часть предыдущего вычисления как новый x и так каждый раз
 
своим "подгоном" dx на каждом шаге вы будете терять точность, потому что разница будет уменьшаться (исключение когда целая часть, все же, поменяет значение, потому что тогда ceil выдаст число больше на 1)
 
то есть получили dx, что из за округления дает .9999999 и так далее..
вы его добавили к предыдущему значению, получили тот же .9999999, это даст dx еще меньше, близко к нулю.. что у вас и наблюдается.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 08:38 03-03-2013
MoLnuS



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
MoLnuS
я все равно не понимаю зачем вам вообще нужен dx.. генератор случайных чисел берет дробную часть предыдущего вычисления как новый x и так каждый раз  

Ой как все..%))
Т.е. DX высчитать только для первого (введеного икса), затем x=x+dx, потом выражение, а следующий икс брать уже как дробную часть предыдущего выражения? Или как?%)) С математикой этой еще сложней, чем с программированием=\\
 
А DX вообще нужен по заданию..%) Если Вы об этом. Хотя я уже сомневаюсь, что Вы об этом..=)
 
Прошу простить меня за такую назоиливость и непонимание...=\\

Всего записей: 191 | Зарегистр. 21-05-2009 | Отправлено: 08:53 03-03-2013
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

Компьютерный форум Ru.Board » Интернет » Web-программирование » вопросы по javascript


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru