Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.06.2015, 11:08
Новичок на форуме
Отправить личное сообщение для Alex_D181 Посмотреть профиль Найти все сообщения от Alex_D181
 
Регистрация: 10.06.2015
Сообщений: 7

Посчитать сумму ширины всех элементов в наборе без использования цикла
Доброго времени суток, задался вот таким вопросом. Есть набор элементов, найденных с помощью jquery. Я хочу получить сумму ширины всех элементов.

Как сделать это через цикл я знаю, интересно можно ли это сделать другим образом.
Ответить с цитированием
  #2 (permalink)  
Старый 10.06.2015, 11:50
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от Alex_D181
Как сделать это через цикл я знаю, интересно можно ли это сделать другим образом.
Только цикл...
Ответить с цитированием
  #3 (permalink)  
Старый 10.06.2015, 12:28
Интересующийся
Посмотреть профиль Найти все сообщения от sogoodweather
 
Регистрация: 09.06.2015
Сообщений: 26

<html>
<head>
</head>
<body>

<div style="width: 10px; height: 20px; background: red"></div>
<div style="width: 10px; height: 20px; background: red"></div>
<div style="width: 10px; height: 20px; background: red"></div>


<script>

collection=[].map.call(document.querySelectorAll("div"), function(x){return x})

getIntWidth=function(x){return parseInt(x.style.width)}
sum=function(x, y){return x+y}

alert(
 collection.map(getIntWidth).reduce(sum)
)





</script>

</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 10.06.2015, 13:20
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

sogoodweather, это типа не цикл?
Ответить с цитированием
  #5 (permalink)  
Старый 10.06.2015, 13:38
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

без цикла:
<div id="id1" style="width: 10px; height: 20px; background: red"></div>
<div id="id2" style="width: 10px; height: 20px; background: red"></div>
<div id="id3" style="width: 10px; height: 20px; background: red"></div>
<script>
 alert(
   document.getElementById('id1').offsetWidth + 
   document.getElementById('id2').offsetWidth + 
   document.getElementById('id3').offsetWidth
 );
</script>
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #6 (permalink)  
Старый 10.06.2015, 13:53
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от devote
без цикла
Ответить с цитированием
  #7 (permalink)  
Старый 10.06.2015, 15:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109


<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .test{
    display: inline-block;
  }
  .test div{
    float: left;
  }

  </style>
</head>

<body>
<html>
<head>
</head>
<body>

<div style="width: 10px; height: 20px; background: red"></div>
<div style="width: 10px; height: 20px; background: red"></div>
<div style="width: 10px; height: 20px; background: red"></div>



<script>
var b =  document.body;
b.classList.add('test')
alert(b.offsetWidth)
</script>

</body>
</html>

</body>

</html>
Ответить с цитированием
  #8 (permalink)  
Старый 10.06.2015, 15:36
Интересующийся
Посмотреть профиль Найти все сообщения от sogoodweather
 
Регистрация: 09.06.2015
Сообщений: 26

Сообщение от ksa
это типа не цикл?
нет.функция -- это не цикл. (независимо от внутренней реализации)
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена в строке всех точек на пробелы без использования регулярных выражений AlexSol Общие вопросы Javascript 2 02.04.2015 15:28
Вычесть один массив из другого без использования цикла Casufi Общие вопросы Javascript 1 16.01.2013 20:21
как посчитать сумму выбранных элементов checkbox nikimak92 Общие вопросы Javascript 9 01.06.2010 10:16