Kamrad.ru

Go Back   Kamrad.ru > Авторские форумы > Веб-дизайн, вёрстка и веб-программирование

Reply
 
Thread Tools Display Modes
Old 21-07-2003, 17:14   #1
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Question Вопросы по Javascript

Камрады, у меня появилось немного вопросов касательно Javascrpt'ов :

1. - Вопрос снят. Спасибо Mips'у

2. - Вопрос снят. Спасибо Alex Spade'у

3. - Вопрос снят. Спасибо Urkagan'у

4. - Вопрос снят. Спасибо Mips'у


__________________

...en grusom død til hver en mann som ikke hyller vårt faderland...

Last edited by Svartkladd; 27-07-2003 at 20:30.
Svartkladd is offline   [Ответить с цитированием]
Old 21-07-2003, 17:25   #2
Alex Spade
Модератор
 
Alex Spade's Avatar
 
Join Date: июл 2002
Location: Москва, Зеленоград
Сообщений: 2,849
Про пункт 2.
<SCRIPT language="JavaScript">
{
c = Math.abs(-2);
document.write(c);
}
</SCRIPT>

Про пункт 4.
Вопрос таки был про факториал или таки про рекурсии?
Высчитывать факториал рекурсивно, ИМХО, не продуктивно, for прекрасно с этим справляется.

Про пункт 3.
Зайди на
http://starwarrior.theforce.ru/index....htm#TIEFUCKER
щёлкни по картинке
У кода две части
1) вызывная (посмотришь сразу)
2) и закрывная-пересыльная (откроется окошко, правой клавишей, смотри код)

Last edited by Alex Spade; 21-07-2003 at 17:45.
Alex Spade is offline   [Ответить с цитированием]
Old 21-07-2003, 17:45   #3
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Alex Spade Про вычисление факториала числа при помощи рекурсии (в скрипте все видно)
Зря ты так, очень даже продуктивно... имхо...
tnx, посмотрю...
Svartkladd is offline   [Ответить с цитированием]
Old 21-07-2003, 17:55   #4
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Alex Spade Про ссылку - это немного не то, я имел в виду метод confirm объекта window - там же boolean' овский тип, а по ссылке все упрощено до нельза - две кнопки с onClick'ом...
Я же спросил - почему при нажатии на Cancel он возвращает True - вот что мне не понятно...
Svartkladd is offline   [Ответить с цитированием]
Old 21-07-2003, 19:12   #5
Alex Spade
Модератор
 
Alex Spade's Avatar
 
Join Date: июл 2002
Location: Москва, Зеленоград
Сообщений: 2,849
Vrot
почему при нажатии на Cancel он возвращает True
Точно? Проверь, но не через if, а явно...
Alex Spade is offline   [Ответить с цитированием]
Old 21-07-2003, 20:58   #6
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Alex Spade Странно, так все путем... Как думаешь, где ошибка в скрипте?
ЗЫ. Спасибо за Math
Svartkladd is offline   [Ответить с цитированием]
Old 22-07-2003, 06:43   #7
Urkagan
Модератор
Наглая жирная рожа
 
Join Date: мая 2000
Location: Moscow
Сообщений: 172
Vrot
по поводу вопроса № 3. Есть у меня подозрение, которе жутко лень проверять в книге, ибо утро, завтрак, и вообще . Так вот есть подозрение что надо писать if (a==true). То есть два знака равно, что является оператором сравнения, а не присвоения, как в твоем случае.
Urkagan is offline   [Ответить с цитированием]
Old 22-07-2003, 10:51   #8
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Urkagan Ессно!!! /Бьется головой о клавиатуру/
Svartkladd is offline   [Ответить с цитированием]
Old 22-07-2003, 16:28   #9
Anafay
 
Anafay's Avatar
 
Join Date: сен 2001
Location: Воронеж
Сообщений: 2,162
Vrot
Code:
<html>
<head>
   <script>
      var   testfun=new Function("","document.writeln('test');");
   </script>
</head>
<body>
   <script>
      testfun.call();
   </script>
</body>
</html>
Подробнее смотреть Тут
Anafay is offline   [Ответить с цитированием]
Old 22-07-2003, 16:36   #10
Anafay
 
Anafay's Avatar
 
Join Date: сен 2001
Location: Воронеж
Сообщений: 2,162
Vrot
По поводу (4): функция, вычисляющая факториал, должна вычислять факториал, не более того. И делать в ней что-то еще не стоит. Если тебе надо его вывести в документ или еще куда - то это другая функция.
Anafay is offline   [Ответить с цитированием]
Old 22-07-2003, 20:34   #11
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Anafay Большое спасибо!
Svartkladd is offline   [Ответить с цитированием]
Old 25-07-2003, 07:26   #12
Mips
Модератор
Злыдень немрущий
 
Mips's Avatar
 
Join Date: сен 2000
Location: Краснодар
Сообщений: 2,333
1.
<script>
samplefunc=new Function("a","b","return a+b;");
document.write(samplefunc(2,3));
</script>


4.
<script>
function factorial(n) {
n=Math.floor(n);
if (n<0) return -1;
else if (n==0) return 1;
else return (n*factorial(n-1));
}
document.write(factorial(5));
</script>


или, если версия яваскрипта 5.5

<script>
function factorial(n){
n = Math.floor(n);
if (n<0) return -1;
else if (n==0) return 1;
else return n*arguments.callee(n-1)
}
document.write(factorial(5));
</script>
Mips is offline   Дневник [Ответить с цитированием]
Old 27-07-2003, 20:32   #13
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Mips Огромное спасибо - выручил...
Последняя ( ) просьба, камрады... проверте скрипт круговой анимации... наверное где-то ошибка тк не работает гад

<HTML>
<HEAD>
<title>Анимация на Web-странице</title>
<script>
var xbegin, ybegin, r, angle, timer;
r = 100;
angle = 0;
xbegin = 200;
ybegin = 200;
function setupAnimation() {
timer = window.setInterval("moveImage()", 100) }
function moveImage() {
var rad;
angle += 1;
liveImage.src = "smile.gif";
rad = angle * Math.PI / 180;
liveImage.style.pixelLeft = xbegin + r * Math.sin(rad);
liveImage.style.pixelTop = ybegin + r * Math.cos(rad);
if (angle >= 360) angle = 0; }
</script>
</HEAD>
<BODY onLoad = "setupAnimation();">
</BODY>
</HTML>

Заранее спасибо...
Svartkladd is offline   [Ответить с цитированием]
Old 01-08-2003, 19:31   #14
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Камрады, пожалуйста, выскажите хотя бы предположения...
Svartkladd is offline   [Ответить с цитированием]
Old 01-08-2003, 20:01   #15
Anafay
 
Anafay's Avatar
 
Join Date: сен 2001
Location: Воронеж
Сообщений: 2,162
Vrot
Извини, а кто такой liveImage? По идее, это должно ошибку выплевывать. С руганью на строчку с liveImage.src= и т.д.
Anafay is offline   [Ответить с цитированием]
Old 04-08-2003, 21:04   #16
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
ты хочешь сказать, что надо было просто liveImage инициализировать как объект new Image(); ?
Svartkladd is offline   [Ответить с цитированием]
Old 05-08-2003, 00:22   #17
Mips
Модератор
Злыдень немрущий
 
Mips's Avatar
 
Join Date: сен 2000
Location: Краснодар
Сообщений: 2,333
Vrot, У тебя же нет объекта liveImage.
Просто добавь в боди <img src="smile.gif" id="liveImage" style="position:absolute">

ps: Не бери в голову, бери Vrot - легче выплюнуть :}
Mips is offline   Дневник [Ответить с цитированием]
Old 07-08-2003, 17:19   #18
Ethereal
Пустотник
 
Join Date: сен 2002
Location: Таллинн, Санкт-Петербург
Сообщений: 89
Vrot Зачем же формулировки вопросов стирать? Это уже проявление эгоизма, IMHO
Ethereal is offline   Дневник [Ответить с цитированием]
Old 10-08-2003, 15:08   #19
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Ethereal
Упс... !!! Сорри!!! хотел их опубликовать, когда все иссякнут, но тут появились новые и... забыл...
Вот они:

1. По поводу манипуляции функцией как объектом. Класс функции Function, короче говоря... Дык вот... подразумевается, что выражения типа function samplefunc(a,b) { return (a+b);} и samplefunc = new Function("a","b","a+b"); эквивалентны. Но если вывести результат на экран HTML документа первым способом у меня не вызывало трудностей:
...
<script>
function samplefunc(a,b) { var c; c = a+b; document.write(c.toString());}
</script>
...
<script language="javascript">
samplefunc(2,3);
</script>
...
... что ессно выводило 5, то с приминением второго варианта у меня возникли проблемы... Так вот собственно о чем я прошу - приведите пожалуйста пример такого же использования, но классом функции Function (то есть, как вывести результат на экран вторым способом?).

2. У меня также почему то не получается использовать методы класса Math...
Рассмотрим на примере abs(); Допустим, мне нужна абсолютная величина числа -4...
Я поступал так...

c = new Math();
c = c.abs("-4"); /пробовал и без кавычек, короче, как только не пробовал.../
document.write(c.toString());

По крайней мере аналоги методов класса Date работали, а тут такая бяка...  Ну не возвращает он 4... Что делать?

3. Еще один вопрос касается манипуляции окнами. Допустим, мне надо, чтобы при открытии новой странички появлялось предложение о ее закрытии с вариантами OK & Cancel - вот что я делал:

var a; /пробовал и без инициализации/
a = window.confirm("Хочешь выйти?");
if (a = true)
window.close();
else
document.write("Зря, дерьмовый сайт!");

Дык вот... при любом варианте срабатывает только window.close(); Может я что не так написал? Короче, и тут нужен ваш совет, камрады.

4. Последний вопрос про рекурсии. Функция высчитывающая факториал выглядет так:

function factorial(a) {
if (a = 0)
{
return 1;
}
else
return (a*factorial(a-1));
}

Тут вопрос ерундовый... Как вывести разультат на экран? Стандартным присваиванием, как в вопросе 1, не получается... Ай нид хэлп...



Mips /бьется головой о клавиатуру.../
Svartkladd is offline   [Ответить с цитированием]
Old 04-09-2003, 00:03   #20
Укуренный Зомби
Запойная Травоядная Сволочь
 
Join Date: янв 2003
Location: Одесса
Сообщений: 251
господа... а вот учебника по яве ни у кого не завалялось?
Укуренный Зомби is offline   [Ответить с цитированием]
Old 05-09-2003, 18:06   #21
Svartkladd
Priest Of Syrinx
 
Join Date: сен 2002
Сообщений: 3,635
Укуренный Зомби Java или JavaScript?
Svartkladd is offline   [Ответить с цитированием]
Old 13-09-2003, 15:13   #22
Mips
Модератор
Злыдень немрущий
 
Mips's Avatar
 
Join Date: сен 2000
Location: Краснодар
Сообщений: 2,333
если по яваскрипт, то смотри Справочник веб-программера
Mips is offline   Дневник [Ответить с цитированием]
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +3. The time now is 04:21.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Любое использование материалов сайта
возможно только с разрешения его администрации.