Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Особенности синтаксиса JS

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: частный случай
Slavenin
Отправлено: 07 Июня, 2011 - 21:16:07
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




читал про объект Range встретил следующую синтаксическую конструкцию :
CODE (javascript):
скопировать код в буфер обмена
  1. $ieTextRange = {
  2.      create : function() {
  3.          // Найдем кнопку
  4.          var button = document.getElementById('buttonId');
  5.          // Если мы в ИЕ
  6.          if ( button.createTextRange && button.createTextRange() != undefined ) {
  7.              // Создаем TextRange
  8.              var rng = button.createTextRange();
  9.              // И вернем текстовое содержимое полученного объекта
  10.              return rng.text;
  11.          } else
  12.              return 'Вероятно, у вас не IE (поздравляем!), смотрите реализацию Range выше';
  13.      }
  14. }


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

(Отредактировано автором: 07 Июня, 2011 - 21:16:38)

 
 Top
Viper
Отправлено: 08 Июня, 2011 - 07:14:27
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)






-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Slavenin
Отправлено: 08 Июня, 2011 - 11:39:18
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




хм, я наверн неправильно сформулировал вопрос. как создавать и управлять объектом range я понял, интересует именно синтаксическая составляющая данного скрипта:

CODE (javascript):
скопировать код в буфер обмена
  1. $ieTextRange = {
  2.      create : function() {
  3.          ...
  4.          } else
  5.          ...
  6.      }
  7. }


в частности, для чего применяется знак $ перед ieTextRange и конструкция create : function()
 
 Top
DlTA
Отправлено: 08 Июня, 2011 - 11:47:31
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




в JS имена могут называться с символа $, это не конструкция
 
 Top
Slavenin
Отправлено: 08 Июня, 2011 - 12:18:24
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




DlTA пишет:
в JS имена могут называться с символа $, это не конструкция

хорошо, значит получается что создается объект $ieTextRange, а create : function() что означает? и если create это команда, то логично предположить, что существуют еще аналогичные ей. Вопрос где их можно найти? Улыбка
 
 Top
Ch_chov
Отправлено: 08 Июня, 2011 - 12:43:11
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




Цитата:
а create : function() что означает?

create это своство объёкта, а function его значение.
По другому это можно записать так:
CODE (javascript):
скопировать код в буфер обмена
  1. $ieTextRange.create = function () { ... }

Цитата:
Вопрос где их можно найти?

CODE (javascript):
скопировать код в буфер обмена
  1. console.log($ieTextRange)
 
 Top
Slavenin
Отправлено: 08 Июня, 2011 - 12:51:46
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




то есть по другому это можно записать как?

CODE (javascript):
скопировать код в буфер обмена
  1. with($ieTextRange)
  2. {
  3.  create = function(){...}
  4. }
 
 Top
DlTA
Отправлено: 08 Июня, 2011 - 13:11:00
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




Slavenin пишет:
with($ieTextRange)
{
 create = function(){...}
}
помоему в JS нет такой конструкции
 
 Top
Slavenin
Отправлено: 08 Июня, 2011 - 13:17:07
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




DlTA пишет:
помоему в JS нет такой конструкции

http://javascript[dot]ru/basic/syntax-switch-for Подмигивание

(Отредактировано автором: 08 Июня, 2011 - 13:17:42)

 
 Top
DlTA
Отправлено: 08 Июня, 2011 - 14:18:27
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




смущает
http://javascript.ru пишет:
У with есть одна большая проблема, из-за которой многие вообще рекомендуют забыть эту конструкцию.
А именно - внутри блока with абсолютно нельзя сказать, откуда будет взята та или иная переменная.
 
 Top
Slavenin
Отправлено: 08 Июня, 2011 - 18:57:34
Post Id



Посетитель


Покинул форум
Сообщений всего: 285
Дата рег-ции: Май 2010  
Откуда: Тверь


Помог: 4 раз(а)




DlTA пишет:
смущает
http://javascript[dot]ru пишет:

и вместе с тем далее
http://javascript[dot]ru пишет:
Цитата:
С другой стороны, синтаксис with удобнее и полезен там, где ошибок уж точно не может быть. Например, при манипуляции стилями.


и все-таки синтаксис очень удобен, и если пользоваться им с умом и определенной долей осторожности, то можно упростить некоторые вещи Улыбка

(Отредактировано автором: 08 Июня, 2011 - 18:58:36)

 
 Top
IllusionMH
Отправлено: 08 Июня, 2011 - 21:54:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




Slavenin, по поводу with загляните сюда Mistake 6 - You’re Using with or eval
так как раз показан пример где код
CODE (javascript):
скопировать код в буфер обмена
  1. with($ieTextRange)
  2.  {
  3.   create = function(){...}
  4.  }

не прокатит и описано почему.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB