Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.06.2013, 15:13
Аватар для Алек
Аспирант
Отправить личное сообщение для Алек Посмотреть профиль Найти все сообщения от Алек
 
Регистрация: 14.04.2013
Сообщений: 85

Переменная в параметре функции
Здравствуйте!
Я вот пишу функцию, в параметр подставляю переменную чтоб пользователь мог задавать время за которое блок будет исчезать.

function real (x, y){
var f = "#"+x;
if(y < 500 || y > 3000){
return false;
}
$(f).hide('slide', y);

}
var von = prompt("Введите число уезда блока");
real ("div_for_img", von);

Но блок просто исчезает, игнорируя .hide('slide', y);
Что можно предпринять в связи с этим?
Ответить с цитированием
  #2 (permalink)  
Старый 12.06.2013, 15:57
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Алек
Что можно предпринять в связи с этим?
Прочитать документацию?
Ответить с цитированием
  #3 (permalink)  
Старый 12.06.2013, 16:18
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Алек,
http://api.jqueryui.com/hide/
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  <script>
  $(window).load(function () {
    function real (x, y){
 var f = "#"+x;
 if(+y < 500 || +y > 3000){
 return false;
 }
 $(f).hide('slide', +y);

 }
 var von = prompt("Введите число уезда блока",2000);
 real ("div_for_img", von);
 })
  </script>
</head>

<body>
  <img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" alt="" id="div_for_img">

</body>

</html>

Последний раз редактировалось рони, 12.06.2013 в 16:26.
Ответить с цитированием
  #4 (permalink)  
Старый 12.06.2013, 16:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Алек,
какой браузер? наверно Google Chrome?
Ответить с цитированием
  #5 (permalink)  
Старый 12.06.2013, 16:31
Аватар для BaVa
Аспирант
Отправить личное сообщение для BaVa Посмотреть профиль Найти все сообщения от BaVa
 
Регистрация: 16.11.2011
Сообщений: 60

чтоб не создавать лишнюю переменную лучше сделать так
x = "#" + x;
Ответить с цитированием
  #6 (permalink)  
Старый 12.06.2013, 17:51
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от BaVa
чтоб не создавать лишнюю переменную лучше сделать так
Это мелочи по сравнению с именами переменных.
x , y - координаты ??
real - догадайся с тысячной попытки что функция с таким именем делает
von - ??? аббревиатура какая чтоле?

<img id="div_for_img" /> - ГДЕ ЛОГИКА, БРАТ?? ГДЕ ЛОГИКА? !!!
Ответить с цитированием
  #7 (permalink)  
Старый 12.06.2013, 18:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Сообщение от danik.js
ГДЕ ЛОГИКА, БРАТ?? ГДЕ ЛОГИКА? !!!
Максимальное сохранение контекста ТС с минимальными затратами.
Ответить с цитированием
  #8 (permalink)  
Старый 12.06.2013, 18:31
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от рони
Максимальное сохранение контекста ТС с минимальными затратами.
Вопрос был к ТС, а не к тебе)
Ответить с цитированием
  #9 (permalink)  
Старый 12.06.2013, 19:41
Аватар для Алек
Аспирант
Отправить личное сообщение для Алек Посмотреть профиль Найти все сообщения от Алек
 
Регистрация: 14.04.2013
Сообщений: 85

Чё-то я вообще уже перестал что-нибудь понимать, я думал что скрипт не работает, потому что prompt возвращает строку, а не число, отпарсил, результат 0.
Вот специально задал переменную строкой, отпарсил, всё работает:
var von = "2500";
var newvon = parseInt(von);
real ("div_for_img", newvon);
А переменная полученная методом prompt не работает, переписал скрипт, как выше написал рони, не работает!
До этого несколько раз использовал prompt например когда получал возраст пользователя, проверял специально условиями y > 16 || y < 30 || isNaN(y), всё отлично работало.
Почему-то prompt не под каким видом не желает работать в этой функции и я не знаю в чём тут причина.

ЗЫ На счёт непонятных имён переменных, я обычно всегда так делаю, внутри функции это локальные переменные, они всё равно ни на что не влияют, но что касается real и von, то я переделаю имя после того как событие на функцию повешу, просто не определюсь пока какие имена кому давать.
Ответить с цитированием
  #10 (permalink)  
Старый 12.06.2013, 20:10
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,121

Алек,
нерабочий пример здесь разместите используя <> кнопочки возле смайлика
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переменная php -> параметр функции JS allie Общие вопросы Javascript 3 30.09.2011 10:11
Глобальная переменная в функции Орёл Общие вопросы Javascript 1 18.12.2010 20:21
arguments вызвавшей функции mister_maxim Общие вопросы Javascript 4 12.10.2010 16:21
Глобальная переменная, считать правильнае значение в функции konstantinopol Общие вопросы Javascript 11 01.05.2010 23:28
Переменная как значение функции. Jurasmi Общие вопросы Javascript 7 22.04.2010 12:45