Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 25.03.2015, 05:47
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Для этого функция $ должна вернуть объект, у которого есть метод hide и метод show. Открой исходники jQuery и посмотри как там сделано.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #12 (permalink)  
Старый 25.03.2015, 11:26
Аспирант
Посмотреть профиль Найти все сообщения от newuser1001
 
Регистрация: 24.03.2015
Сообщений: 92

Сообщение от cript
как в таком случае
В таком случае, надо сначала реализовать юзабельную версию ее. Например:
<html>
<head>
<style>
 div{
  background: blue
 }
</style>
</head>
<body>

<div>foo</div>
<div>foo</div>
<div>foo</div>
<div>foo</div>
<div>foo</div>
<div>foo</div>
<div id="foo">foo</div>

<script>

$=function(el){
  if(typeof(el)==="string") return $.create([].map.call(document.querySelectorAll(el), function(el){return el}))
  return $.create([el])
}
$.create=function(arr){var o=Object.create(this); o.arr=arr; return o}
$.hide=function(){this.arr.forEach(function(el){el.style.display="none"})}
$.show=function(){this.arr.forEach(function(el){el.style.display="block"})}

$("div").hide()
$(foo).show()

</script>

</body>
</html>
Ответить с цитированием
  #13 (permalink)  
Старый 26.03.2015, 20:34
Профессор
Отправить личное сообщение для cript Посмотреть профиль Найти все сообщения от cript
 
Регистрация: 03.02.2014
Сообщений: 238

Сообщение от newuser1001 Посмотреть сообщение
В таком случае, надо сначала реализовать юзабельную версию ее. Например:
<html>
<head>
<style>
 div{
  background: blue
 }
</style>
</head>
<body>

<div>foo</div>
<div>foo</div>
<div>foo</div>
<div>foo</div>
<div>foo</div>
<div>foo</div>
<div id="foo">foo</div>

<script>

$=function(el){
  if(typeof(el)==="string") return $.create([].map.call(document.querySelectorAll(el), function(el){return el}))
  return $.create([el])
}
$.create=function(arr){var o=Object.create(this); o.arr=arr; return o}
$.hide=function(){this.arr.forEach(function(el){el.style.display="none"})}
$.show=function(){this.arr.forEach(function(el){el.style.display="block"})}

$("div").hide()
$(foo).show()

</script>

</body>
</html>
В таком случае нельзя сделать так $('div').className
Ответить с цитированием
  #14 (permalink)  
Старый 26.03.2015, 20:56
Аспирант
Посмотреть профиль Найти все сообщения от newuser1001
 
Регистрация: 24.03.2015
Сообщений: 92

Сообщение от cript
В таком случае нельзя сделать так $('div').className
Долго думал?
<html>
<head>
<style>
 div{
  background: blue
 }
</style>
</head>
<body>
 
<div class="foo">foo</div>
<div class="foo">foo</div>
<div class="foo">foo</div>
<div class="foo">foo</div>
<div class="foo">foo</div>
 
<script>
 
$=function(el){
  if(typeof(el)==="string") return $.create([].map.call(document.querySelectorAll(el), function(el){return el}))
  return $.create([el])
}
$.create=function(arr){var o=Object.create(this); o.arr=arr; return o}
$.className=function(){return this.arr.map(function(el){return el.className})}
 
alert($("div").className())
</script>
</body>
</html>

теперь можно
Ответить с цитированием
  #15 (permalink)  
Старый 26.03.2015, 21:18
Профессор
Отправить личное сообщение для cript Посмотреть профиль Найти все сообщения от cript
 
Регистрация: 03.02.2014
Сообщений: 238

Это не совсем то, придется очень много функций создавать, например, $('div').innerHTML

Может можно как то проверить вызывается ли функция или нет?

Последний раз редактировалось cript, 26.03.2015 в 22:44.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить массив без повторяющихся элементов truten Общие вопросы Javascript 5 15.12.2013 20:35
Собрать массив из элементов DOM Fairy-Wilbury Events/DOM/Window 4 13.09.2013 17:30
Удалить и вернуть массив из удаленных элементов splice Paulyyy Общие вопросы Javascript 15 29.05.2013 15:36
Упорядочить заданный числовой массив X (M) в порядке убывания значений его элементов rjabijj Общие вопросы Javascript 6 06.07.2012 21:34
Упорядочить заданный числовой массив X (M) в порядке убывания значений его элементов. Drimmer Серверные языки и технологии 0 02.07.2012 18:22