Этого треда уже нет.
Это копия, сохраненная 5 июня 2015 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
396 Кб, 1024x640
201 Кб, 610x457
161 Кб, 983x220
JavaScript Thread #12 #462898 В конец треда | Веб
В этом треде адепты самого гибкого и удобного языка в мире обсуждают дальшнейшее развитие этого торжества научно-технической мысли. Скоро выйдет ES6, а значит недостатки JS будут окончательно искоренены. Ура!

Ньюфагам:
1. Что это за язык такой? - Объектно ориентированный язык, наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам.

2. Это чтобы менять цвета, и вызывать всякие всплывающие окна? - Это только малая часть того, что может язык. Сейчас, на JS можно делать игры (phaser, cocos, etc.), 3D графику (three.js), можно делать и приложения для телефонов(phonegap, ionic), можно делать десктоп приложения(node-webkit).

3. Ну ясно, а че еще можно? - А еще можно использовать на сервере, причем очень даже успешно. А все благодаря платформе node.js, и v8, который встроен во все хромоподобное.

4. Я щас ничего не понял, повтори. - Проще говоря, если ты не делаешь огромный интернет магазин, или хай лоад проект, то можешь смело использовать javascript и node.js.

5. А что еще прикольного можно сделать? - А еще есть MV фреймворки, angular, backbone, ember, knockout и другие, менее популярные.

6. Зачем оно надо? - Для создания SPA, в основном, но ты можешь копнуть глубже.

7. Очень уж много всяких фреймворков... Нельзя ли просто изучить jquery и писать все на нем? - Не стоит, можешь начать писать на жыквери, когда освоишь ванильный JS, дабы не испортить себе восприятие языка, и вбудущем не испытывать трудностей с изучением сложных фреймворков.

8. Ну ладно, с чего начать изучение то? - Дальше я приложу список материалов для изучения.

Учим JS:
Книги: Дэвид Фленеган - "JavaScript: Подробное руководство" - маст хев, книга, которую будешь читать не раз. (Читать 6-е издание).

Дуглас Крокфорд "JavaScript: сильные стороны" - просто хорошая книга.

Стефанов С. - "JavaScript. Шаблоны"

Джон Резиг - "Секреты JavaScript ниндзя"

Николас Закас - "JavaScript. Оптимизация производительности"

Dr. Axel Rauschmayer - "Speaking JavaScript: An In-Depth Guide for Programmers" - Одна из лучших книг по JS. Пока только на английском. http://speakingjs.com/

Marijn Haverbeke - "Eloquent Javascript" - Вводная книга по JavaScript и программирование в целом. Перевод на хабре: http://habrahabr.ru/post/240219/ На английском :http://eloquentjavascript.net/

Онлайн сообщества:
http://learn.javascript.ru/ - оно одно, единственное. Начинать учить язык советую отсюда, потом переходить уже к книгам.

http://www.jstherightway.org/ - Огромный гайд составленный буржуями. Есть книги, статьи и всё-всё-всё.

Бложики и новостные ленты:
http://dailyjs.com/ - DailyJS

http://weblog.bocoup.com/ - Bocoup Weblog

http://perfectionkills.com/ - Perfection Kills

http://www.reddit.com/r/javascript - subreddit на reddit.com

http://toddmotto.com/ - Todd Motto, Lead front-end @appsbroker. Developer Expert @google.

Онлайн курсы:
Как же можно учить язык, только читая книжонки? Нужна практика, и только так изучаемое усваивается, не иначе.

CodeSchool - http://codeschool.com/ Отличный ресурс для изучения языка, очень много курсов по всем передовым технологиям.

CodeAcademy - http://www.codecademy.com/ Уже не такой сильный, но все еще интересный проект, так же маст хев для набивания скилла.

Udacity - https://www.udacity.com/course/ud015 Дает хорошее представляение о замыканиях.

Выучил основы, написал свою пузырьковую сортировку и змейку? Не знаешь как двигаться дальше?

Почитай теперь это - https://shamansir.github.io/JavaScript-Garden/

А потом? Я и так уже гений!!!

Выбери себе направление. Может, ты хочешь игори делать? Тогда вперед на гитхаб, и ищи phaser, pixi и другое, выбор не маленький. Хочешь на сервер сайд, на самой хипстерской технологии? Копай в сторону node, express, socket io. Хочешь писать MVC логику? Angular, backbone, да множество их. Нельзя забывать про NW.js, позволяющий создавать десктопные приложения.
sage #2 #462926
обдристял говнотред динамикоблядей
#3 #462927
>>462926
Первая порватка в треди.
#4 #462930
>>462898
Почему бы не запилить полноценный тредж фронтэнджщиков?
С описаниями библиотек и фреймворками для всех платформ?
#5 #462941
>>462898
Скобочкобляди пытаются обосрать самые читабельные языки - питон и руби, вот потеха. Анонимную функцию({в колбэке({ уже вызвал? })). Скобочки проверил? };));});)
19 Кб, 326x352
15 Кб, 207x321
53 Кб, 568x426
43 Кб, 600x446
#6 #462942

>Объектно ориентированный язык


>JavaScript

#7 #462952
>>462898
Добавьте в шапку codewars, годнота. И еще, "Eloquent Javascript" лежит на гитбуксе полностью на русском, можно в пдф выкачать.
#8 #462953

> самые читабельные языки


> руби


self.unsee( >>462941 )
end
end
end
end
end
end
end
end
end
end
#9 #462964
>>462898

>Объектно ориентированный язык


Это обман чтобы набрать классы)
#10 #462971
>>462953
Скобочки читабельнее;)});)});)})));};}))
sage #11 #462972

>ES6


ентерпраиз-скрипт?
#12 #462977
>>462879
Массив я создать могу. А вот вывести чекбоксы затрудняюсь. Это же создание эелементов динамически? Создать параграф как в примере получается, даже чекбокс, а вот подписать лейбл и вообще сдвинуться чуть дальше уже нет.
sage #13 #463021
>>462898

>торжества научно-технической мысли


>наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам



Обоссал.
#14 #463022
Java-посан в треде.
Чому у меня не работает следующая angular-прилага:

<!DOCTYPE html>
<html ng-app="myApp">
<head>
\t<script href="resources/js/predefined/angular.js"></script>
\t<script type="text/javascript">
\t\tvar app = angular.module('myApp', []);

\t\tapp.controller("MyCtrl", function($scope) {
\t\t\t$scope.name = "World";
\t\t});
\t</script>
</head>
<body ng-controller="MyCtrl">
\t<p>Hello, {{ name }}</p>
</body>
</html>

PS объявление ангулар модуля и контроллер вынес в <script> из файла для лучшего представления тут.
#15 #463042
>>463022
Всё, понял.
#16 #463055
>>463042

Можешь не благодарить.
#17 #463061
>>463055
Как хочешь.
36 Кб, 520x440
#18 #463122
Посоны, а существует ли js-либа для работы с изображениями? Хочу накладывать хуйцы на фотографии бесплатно без смс, что посоветуете? На серверсайде будут рельсы.
#19 #463129
>>463122
Гугли canvas (fabric.js, paper.js и т.д.)
#20 #463265
>>462977
http://plnkr.co/edit/7dWDc2P7oWm4xYo7QS7V?p=preview

Спрашивай, если что непонятно. Писать комментарии я поленился
#21 #463267
>>463265
Что-то не хочет грузиться.
#22 #463270
>>463267
Планкер оче тормозной, попробуй попозже
#23 #463271
>>463270
Ок. Спасибо, на тебя вся надежда. Вчера ковырялся, то ли цикл бесконечный становился, то ли еще что-то но у меня в определенный момент страница переставала реагировать на мои действия, я даже код не мог выделить и сохранить, приходилось закрывать вкладку.
#24 #463283
>>463270
Круто, спасибо большое. Только я по ангуляровски не очень понимаю, но сейчас прочитаю какой-то ученик на хабре. А как сделать, чтобы не в параграф выводились слова, а в TextArea? Сам потыкал, только новые инпуты создаются.
#25 #463331
Я правильно понимаю, параметры функций нужны только для того, чтобы не объявлять переменные?
#26 #463343
>>463331
Что, простите? Как ты собираешься передавать в функцию что-нибудь не используя параметры? Через глобальные переменные?
#27 #463353
>>463343
Не знаю. Есть ли где-нибудь учебник для ультрадаунов? Чтоб каждый символ был помечен и детально разжевывалось, что он означает? Или просто руководство Фленагана последовательно читать, а не рывками?
#28 #463381
>>463283
http://plnkr.co/edit/7dWDc2P7oWm4xYo7QS7V?p=preview

Каждый раз, когда ты кликаешь по чекбоксу, вызывается функция, которая проходится по массиву, выбирает названия отмеченных пунктов и собирает их в строку.
На самом деле, ангуляр очень сложный для изучения, поэтому если не сможешь разобраться - дропай и начни с jquery. Гораздо больше придется писать, но хотя бы проще и понятнее. Потом вернешься к ангуляру, если захочешь.

>>463331
Представь, что твоя функция выполняет какую-то определенную задачу и не может знать о каких-то там глобальных переменных. Всё, что ей нужно знать для выполнения своей задачи, ты передаешь в качестве параметров. Ты, конечно, можешь использовать переменные, объявленные где-то выше, но рано или поздно наткнешься на какие-нибудь конфликты имен, например.
#29 #463386
>>463381
Спасибо, твоему великодушию нет границ. Используя jquery тоже можно десктопные приложения писать?
#30 #463387
>>463386
Да, можешь использовать всё, что доступно в вебе. NW.js это по сути браузер без всего лишнего насколько я понимаю
#31 #463396
>>463387
Как будут выглядеть html и js коды, если сделать тот же список продуктов с помощью jquery?
#32 #463403
>>463396
Просто некоторые вещи нужно будет делать вручную. Обновление списка, например.
#33 #463435
>>463343
Ты вообще сама(а)-то в курсе, что параметры - это именованные ссылки на ячейки массива arguments ? Ну и что можно их не прописывать вовсе, а передавать - что заблагорассудится ?
#34 #463451
>>463403
Как сделать, чтобы отмеченные галочками продукты появились в форме? Каким-то образом сложить их имена и добавить в атрибут value элемента textarea?
#35 #463455
Может ли jquery обратиться к чекбоксам с поставленной галочкой?
#36 #463457
>>463451
>>463455
До ответов на вопросы этого уровня уже можно дойти самому. Google + Stackoverflow + devdocs.io.
Если 1.5-2 дня бьешься и не можешь найти ответа - тогда уже подумывай о том, что бы спросить кого-то.
#37 #463458
>>463455
Сорри бро, но чекбоксы встроены в браузер, они вне ДОМа, так что jquery их не достанет. Это лонг-стэндинг бан в вебе, так что терпи, братишка.
60 Кб, 520x581
#38 #463460
>>463457
Но ответь хотя бы на это

>Каким-то образом сложить их имена и добавить в атрибут value элемента textarea?


>>463458
Улыбнулся.
#39 #463466
>>463460
Если ты задумал делать десктопное приложение на js и не хочешь сам решить такой простой вопрос, то тебе стоит придумать себе другое занятие. Серьезно, тут максимум три часа посидеть, почитать пару туториалов по jquery. Я вот сейчас одним запросом в гугле перешел по первой же ссылке на stack overflow и получил готвый ответ с кодом.
Если хочешь продолжать, придется много гуглить, читать, не понимать, снова гуглить и читать. И так до просветления.
#40 #463468
>>463466
Я же не сижу и жду ваших ответов, а гуглю, у меня открыто три окна хрома, в каждом по 10-15 вкладок, а уже не помню, зачем мне половина из них, но ответы потихоньку нахожу. Я не против посидеть и разобраться, но ситуация такова, что сегодня мне лучше как можно скорее всё сделать, потому что крайний срок уже завтра, то есть через несколько часов. Можешь хотя бы ссылку скинуть, что ты там нашел или по каким запросам искал?
#41 #463474
>>463468
Выводи каждое промежуточное значение в консоль и смотри что получаешь, и выбирай что там тебе нужно.
#42 #463477
>>463468
Так бы сразу и сказал, что срочно.
http://jsfiddle.net/LfjSG/771/

Правда сомневаюсь, что ты все это за несколько часов сделаешь.
#43 #463495
>>463477
http://plnkr.co/edit/FNrWTIRxD1ThooRhN4DI?p=preview
Почему у меня не работает? Ты был прав, я не успею. Ладно, это было не так важно.
#44 #463498
>>463495
Чет ты подзаебал меня. Пиши толком чо те надо, я напишу.
мимо-макак
#45 #463580
>>463498
Функционал такой: отмечаешь нужные продукты и они появляются в форме, чекбоксы можно добавлять и удалять, также есть готовые списки, которые тоже можно редактировать. При закрытии программы все изменения сохраняются.
#46 #463587
Жейсаны, поясните.

Захотел серьезно обмазаться js, всякие там мелкоправки кода и прочее появление элементов делал, но хочу изучить клиентский js по-настоящему, епта. Ну и решил сделать слайдер, минималистичный, но не глучащий и адаптивный. Нашел хороший пример и нихуя не понимаю, там такие тонны кода и он не очевидный нихуя, мне бексайд на незнакомом языке понятней, блдаж. Норма ли это? Понимаю, что нужно найти что-то сильно попроще, но хотел сразу понимать как делать четко, дерзко. А то в совсем простых скриптах чето вечно не так, и, хуйзнает, как делать, чтоб было так. В общем, люди, которые говорят, что они знают js, для них нет проблемы врубиться в тонну кода этой йобы http://www.jssor.com/? И они могут так же? Или подобные скрипты пишут какие-то монахи полубоги, а знание клиентского Js предполагает мочь на сопли и изоленту говно прикрутить?
#47 #463647
>>463587
Это оче сложная йоба. Не то что бы нереальная, но работы много. И правильные плагины ещё нужно подобрать. Начни с чего-нибудь попроще. Например, с задачи про мышей.
294 Кб, 400x388
Безопасность НПМ #48 #463664
Я боюсь устанавливать программы из репозитория NPM, я нормален? Там же хостятся тонны всякой неизвестной параши, которая, к тому же, постоянно и часто обновляется. Ведь это же полноценные скрипты, которые имеют не меньше полномочий, чем бинарная программа.

Вот поставлю я Грунт, плагинов к нему, Мочу, Линт, Лесс, ещё что-нибудь, зависимости к этому - и у меня уже несколько десятков пакетов сомнительного происхождения. Я уже не говорю, что всё это ставится в обход системного пакетного менеджера, что вообще немыслимо.

Как с этим жить? Пока придумал только ставить на виртуальную машину, копировать туда проект через локальную сеть, выполнять все преобразования там и переносить результаты обратно. Но это же пиздец.

Как вы делаете?
#49 #463715
>>463664
Ты осознаешь, что ты феерический долбоеб?
#50 #463717
>>463715

Ты бы мог так сказать, если бы я не выебал твою мамку.
#51 #463718
>>463717
/ignore cock-anonymous99
#52 #463748
>>463664
Я вот тоже задаюсь этим вопросом, хотя и не параною настолько. Серьезно, open source сообщество heartbleed проморгало, почему никто не догадался в какой-нибудь не очень распространённый пакет добавить что-нибудь этакое ?
#53 #463749
>>463664
Ты поехавший. Не запускай нпм из под рута и он нихуя не сможет сделать. Если кто-нибудь не подцепил либку в ноду с динамической подгрузкой и подменой system32 для протаскивания бекдора на машину с последующим анальным зондом по сетке, но это всё влажно и только на NT

>>463718
Че эта?
416 Кб, 1161x955
#54 #463797
>>462898
Кто нибуь пробовал ionic? Как оно с точки зрения кастомизации? Можно ли сделать произвольный UI?
#55 #463799
>>463797
Можно. Их UI опционален. Удаляешь всё и пишешь своё
#56 #463805
>>463799
А что у них есть кроме UI?
#57 #463807
>>463805
Оболочка для запуска твоего HTML и прилагающихся вещей, плюс API для работы с телефоном. Я с ним почти не работал, но была задача перенести имеющееся angular приложение на телефоны. Собственно, удалил всё, что он сгенерировал и заменил. Всё работает почти всё
#58 #463896
>>463580
Ебать ты медленный. Еще актуально?
#59 #463897
>>463797
Работал, вроде годно. Даже припердолил плагин шаринга от кордовы
#60 #463902
>>463664
Я пишу в NPM. По два пакета в день получается. Всё норм, используй ещё. Продолжай использовать. И я буду продолжать. Мы здесь все. Мы здесь всё. Хартблид не помеха.
#61 #463908
>>463587
Чем язык проще, тем код на нем становится сложнее, и сильно зависит от того, кто на нем пишет. Например, Javascript и лисп — простые языки. Код на них очень индивидуален в зависимости от подходов и автора.
#62 #463914
>>463664
А еще я проигрываю с сотен статей и руководств, как юзать npm без sudo в духе: sudo chown -R user /usr/bin
33 Кб, 800x600
#63 #463917
>>463664

Пошарился по их сайту, наткнулся на всплывающее окно - теперь нет ни малейшего сомнения, это говно использовать нельзя.
#64 #463937
Скриптаны, нид хелп, нашел один скриптик http://pastebin.com/tbuLFqQa
Что и куда в него дописать, чтобы ссылка открывалась в новой вкладке? Спасибо заранее.
Аноним #65 #463999
>>463937
document.write('<a href=\"' + url + '\" target=\"_blank\">');
#66 #464036
>>463917
А мы ждали этой фичи джва года. Оплатили на год вперёд, зависимость есть!
#67 #464056
>>463896
Я ответил через 8 часов, а ты заметил только через день. Да, актуально.
#68 #464065
>>464036
Можно же у себя поднять npm сервер, разве нет ?
#69 #464066
>>464065
А так же поднять свой гитхаб, свою почту итд итп. Спасибо, но я эту хуйню уже проходил лет 10 назад и больше этим заниматься не намерен.
#70 #464067
>>464066
Почему ? Я правда не понимать. У нас свой гитлаб поднят, мы совсем аутисты ?
#71 #464068
>>464067
Каждый решает сам. Холивары на эту тему ведутся годами. Если ты считаешь, что поддержка гитлаба, его резервирование итд итп стоят меньше 25 долларов в месяц или сколько там сейчас платный тариф я уже не помню — то флаг вам в руки.
#72 #464070
>>464068
Двачую, просто заплатить людям, которые конкретно этим занимаются постоянно - обычно тупо дешевле выходит.
#73 #464073
>>464068
>>464070
Понятно, спасибо.
154 Кб, 605x1196
#74 #464307
>>462898
Скриптач выручай.
Необходимо создать PopUp, его я создал.
Необходимо настроить его параметры: ширина 13% от ширины браузера, а высота 2,5 высоты, например.
Как такое сделать?
В css есть убер вещь - vw и wh, но в мобильных браузерах оно не реализовано.
#75 #464308
>>464307

>высота 2,5 ширины


быстро-fix
#76 #464338
>>464067
очевидно зависит от уровня необходимоб секурности в твоей конторе
#77 #464360
>>464308
Джаваскриптом сделай.
#78 #464383
>>464360
Серьезно? А где джаваскрипт тред?
я для этого тут и отписался, что б помогли
#79 #464389
>>464383

>А где джаваскрипт тред?


http://2ch.hk/pr/res/462898.html
Вот он.

Ответил ли я на ваши вопросы своевременно и в уважительной форме?
#80 #464431

>2. Это чтобы менять цвета, и вызывать всякие всплывающие окна? - Это только малая часть того, что может язык. Сейчас, на JS можно делать игры (phaser, cocos, etc.), 3D графику (three.js), можно делать и приложения для телефонов(phonegap, ionic), можно делать десктоп приложения(node-webkit).


Давайте будем честными и скажем, что все это не кому не нужная хуйня. И да, это JS - это

>чтобы менять цвета, и вызывать всякие всплывающие окна

#81 #464439
>>464431
Какая разница? В большинстве случаев, то за что платят деньги это скучная хуйня
#82 #464455
>>464439
Мамкин студент из opencv треда?
#83 #464456
>>464455
Лол, мимо
35 Кб, 453x604
#84 #464479
ананасы, кто-нить выполнял это ката? http://www.codewars.com/kata/javascript-namespacing/javascript

вот моё решение https://jsfiddle.net/6pa4v7ow/
но проверку оно пройти не в состоянии. Кроме шуток-третий день ебусь с этой задачей. чё блеать ему надо от меня ещё? ЧЯДНТ?
#85 #464485
>>464479
Объявление функции в условии - это пиздец
_мимокрокодил_
#86 #464489
>>464479
Почитай про прототипы
#87 #464501
>>464489
почитал. не понял как это использовать применительно к моей задачи.сорри, походу от меня чтото ускользает
#88 #464505
>>464489
попробовал решить через прототипы
https://jsfiddle.net/6pa4v7ow/1/
результат тот же. ошибки выдает теже.
#89 #464532
>>464505
А вот на этом месте я сам застрял и полез смотреть в ответ. Там по условию задачи нужно, что бы у тебя твой неймспейс не переопределялся, если он уже существует. Нужно сделать так:

Namespace = Namespace || {};
#90 #464547
ОСВЯТИЛ ТРЕД

http://habrahabr.ru/post/215777/
#91 #464559
Какой фреймворк сейчас самый модный и востребованный?
#92 #464653
>>464559
С какой целью интересуешься ?
7 Кб, 598x152
#93 #464666
Есть одна функция которая должна менять стиль окошка через css.

function PopUpShow(){

\tvar message ='"' + $(window).height()/2 +'px"'; // 544.5px
\tpopup.style.width = '"'+$(window).height()/2 +'px"'
\tpopup.style.width = "544.5px"
$("#popup1").show();

}

Почему popup.style.width = "544.5px" работает, а popup.style.width = '"'+$(window).height()/2 +'px"' нет?
#94 #464671
>>464666
Ну ты сам подумай логически.
Посмотри, чему во втором случаее равняется строка - ""544 px"", т.е. значению в кавычках, а они не нужны
838 Кб, 720x958
#95 #464672
Шалом, таки. В ЖС ньюфаг, потому прошу сделать за меня. Надо переходить по ссылке раз в три секунды, ссылка вида [code=html]<a href="?9179217870&amp;userid=513357&amp;pass=8a05491beffrg04d5ffa64c4a24&amp;r=790e9c61659b027d7d79cbef385da334" class="mybutt_off">бить прoтивникa</a>[/code]
Или подскажите что читнуть на тему кликера. Спасибо.
#96 #464674
>>464672
Скачиваешь кликер, программируешь и отходишь от компа.
#97 #464675
>>464666
Это саблайм? Можешь тему куда-нибудь залить?
66 Кб, 758x737
#98 #464677
>>464671
Спасибо.
>>464675
Тема стандартная, я просто шрифт слегка увеличил.
#99 #464680
>>464674
Скажи хоть в какую сторону гуглить. Надо просто вычленить из этого html саму ссылку, так-то вроде уже понял что к чему.
#100 #464688
>>464680
устанавливаешь курсор мышки на ссылку и выставляешь клик каждые три секунды
#101 #464690
>>464688
Какой курсор? Какой, блять, кликер? Мне в ЖС надо, а не вайн ставить ради твоего кликера.
#102 #464694
>>464690
ну тогда не знаю
#103 #464696
>>464690

Совсем еблан тупой?

while sleep 3; do xdotool click 1; done
#104 #464743
>>464532
спасибо, братан, буду пробовать
#105 #464839
котаны, посоветуйте пак с контролами для bootstrap'a. Нужен слайдер для выбора значения от 0 до 100.
#106 #465327
>>462898
Господа, нужно написать на AngularJS + ionic одну вещь. А я его совсем не знаю, поэтому хелп.

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

На js я бы просто сделал проверку на пустое значение value и присвоил бы пустым один класс, а заполненным другой класс. Считал бы кол-во заполненых, записывая число в переменную и потом опираясь на неё создавал бы новые блоки.

Как это реализовать на Angular + ionic? Времени его полностью изучать нету. Ещё и ионик перехватывает все события.
Поясните, что конкретно гуглить.
Спасибо.
#107 #465337
>>465327
Почему ты говоришь

>AngularJS + ionic


?
Ионик сам по себе предполагает ангуляр.
Сходи на сайт ионика, создай базовое приложение tabs и оттуда пляши. Что касается форм, то гугли доки ангуляра по формам, там все относительно просто. Я точно помню что ангуляр помечает инпуты, в которые ты что-то вводил, но вот помечает ли те где есть инфа, не помню.

>Ещё и ионик перехватывает все события.


Штоу? Вполне себе вешал по deviceready через addEventListener и ничего
#108 #465343
Аноны задрочил html/css(сверстал несколько макетов) теперь что лучше начинать задрачивать чтобы работать в студии за еду?? чистый JS или его библиотеку jquery, vanilla js или пхп?
#109 #465347
>>465343
Ты и сюда добрался, пидор. Нахуй иди, сказал же
#110 #465348
>>465347
Не пойду
#111 #465360
В тред срочно вызываются гуру аякса!
Как мне сделать кроссдоменный запрос в своем asp.net приложении?
#112 #465367
>>465360
Через сервер.
#113 #465372
>>465360
jsonp?
#114 #465382
>>465372
А работает? Обычный $.getJSON() ошибку вызывает, потому что между разными доменами нельзя.
#115 #465389
>>465382
Там все чуть сложнее, я не очень силен в этом. Могу посоветовать еще копать в сторону CORS (Cross-origin resource sharing)
29 Кб, 803x564
#116 #465787
Есть страница, посередине неё враппер шириной в 600 пикселей. Он находится посередине страницы за счёт маргин: авто. Для мобильной версии решил сделать так, чтобы ширина боди была равна 700 пикселям, чтобы враппер занимал большую часть экрана. Схема на пике. Однако, когда открываю страницу с телефона, боди с враппером занимают лишь часть пространства, прижимаясь к левому краю экрана, а справа часть экрана полностью заполнена белым. Как это устранить? Как сделать так, чтобы боди занимало весь экран?
#117 #465806
>>465787
Хули ты забыл в javascript-треде? Иди нахуй отсюда.

width: 100%
#118 #465809
>>465806

>Хули ты забыл в javascript-треде?


Ну это же ещё и объединённый фронт-энд тред.

>width: 100%


На что? Если поставить на боди, то оно выглядит, как на десктопе, то есть небольшой враппер посередине, а по краям ничего.
#119 #465812
Вот как это реализовано на http://bash.im/. Если заходить с компа, то посередине враппер, а по краям пусто, у меня также. А если заходить с телефона, то враппер развёрнут на весь экран. Как такое сделать?
sage #120 #465813
>>465812
Нажми ф12 и посмотри как у них сделано, пидарас ебанный. Вообще съеби в верстка-тред. Это не релейт и не программирование.
#121 #465822
>>465813
У них там только
width: 740px;
margin: 30px auto;

У меня по сути также, но их сайт на мобильниках открывается враппером на весь экран, а у меня белые полосы по бокам.
#122 #465825
>>465822
Наверняка у них отдельные стили под разные разрешения. Забыл, как это называется, так что гугли сам
#123 #465828
>>465825
Это медиазапросы называется. Я их у них не вижу. Поищу ещё, но похоже их там нет.
#124 #465831
>>465825
Всё проверил, нет там медиазапросов.
#125 #465836
>>465831
У них там разные файлы стилей возвращаются для десктопной и мобильной версии. Правда не знаю, как это сделано
sage #126 #465847
>>465836
на бэкенде, вестимо
#127 #465872
>>465809
calc(100%-Xpx)
#128 #465901
>>462898
Надо бы осветить: http://habrahabr.ru/post/215777/
46 Кб, 443x604
#129 #465902
ребят, помогите с такой хуйнёй
https://jsfiddle.net/rud9mz62/
sage #130 #465907
[code lang="js"]
var a = +prompt("Быстро вводи число", 0);
var date = new Date();
var summ = 0;
var bin = [0];
for (var i=0; i<a; i++) {
bin[0]++;
if (bin[bin.length-1] == 1) bin[bin.length] = 0;
for (var j=0; j<bin.length; j++){
if (bin[j] == 2) bin[j+1]++, bin[j] = 0;
else break;
}
for (var k=0; k<bin.length; k++){
if (bin[k] == 1) summ++;
}
}
document.write("Количество двоичных единиц от 0 до " + a + " равно " + summ + "<br>");
document.write("Затрачено времени на расчет " + (new Date() - date) + " мс");
[/code]
sage #131 #465908
>>465902
перепеши нормально блять, как мудак сделал
#132 #465909
>>465908
это условие задачи, уж не обессудь. я тут и сам -жертва обстоятельств
#133 #465921
>>465902
Тебе нужно где-то сохранять значение счетчика до первого обращения к функции. Проще всего - как константу в коде функции.
https://jsfiddle.net/ankfb1o0/
44 Кб, 604x403
#134 #465922
>>465921
спасибо большое, но данное решение не проходит последнюю проверку :
for (i = 0; i < 10; i++) {
Test.assertEquals(numbers.toString().replace(/[ \t\n;]/g, ''), 'function(){returni}');
}
Мотивирую это так : Expected: function(){returni}, instead got: functionanonymous(){return0}
sage #135 #466006
>>465812
Они определяют юзер-агент и подсовывают соответсвующие стили и разметку. Можешь посмотреть в веб-инспекторе хрома (иконка с мобильником, потом выбери девайс)
#136 #466022
>>463797
Какая же она все-таки страшная.
#137 #466084
В кодинге ничего не понимаю, но если кто-то запилит как мне надо и все будет работать, готов подогнать 5 баксов.
Вот у меня найденный код, заменяющий одни символы на другие:

var string = document.getElementById("test").innerHTML;
var replacedString = string.replace(/1/gi, "2");
document.getElementById("test").innerHTML = replacedString;

на jsfiddle.net работает как надо, а вот в мой html не проходит (и на w3schools.com в tryit editor тоже не работает).

Я так понимаю, надо еще что-то сделать чтобы он записался в html, только что - хз.
(Конечная цель - замена определенных символов в html-стрингах (если я правильно применяю это слово) с определенным id)
#138 #466093
>>466084
Ссылка на скрипт прописана в head? Тогда просто размести её в конце body, а то ты пытаешься найти элемент #test, который ещё не загрузился.
93 Кб, 856x844
#139 #466098
>>462898
Покушать принёс. Неужели в порашке все настолько хуево, что уже 6-тилетних тимлидов держат у параши?
#140 #466099
>>466093
Вот зараза, в тестовом html сработало, а там где мне надо - нет.
Просто я шатаю тайниборд, и у меня там есть правило разметки, которое присваивает этот id типа

$config['markup'][] = array("/\[markup\](.+?)\[\/markup\]/m", "<span id=\"test\" style=\"font-weight: bold">$1</span>");

а скрипты не в самом html а грузятся, и 'возможно' это происходит до присвоения, ОДНАКО

вот этот скрипт (ставит фон текста и текст рандомного цвета)

http://www.dynamicdrive.com/dynamicindex17/contentcolors.htm

работает нормально через эти же правила разметки, только присваивая не id, а class

$config['markup'][] = array("/penis/", "<span class=\"randomcolor\">PENIS</span>");
И рандомные цвета нормально отображаются.

Это из-за того что он опирается на css, и первый скрипт таким макаром не заработает, или тут что-то другое?
#141 #466162
>>466099
Я нихуя не понял. Выложи хоть куда-то код. И зачем пользоваться отдельным скриптом для рандомизации цвета, если это легко написать самому?
#142 #466185
>>466162
Вот этот скрипт работает.
Кому-то может и легко, а я, как уже сказал, ничего в этом не понимаю, а готового решения через css не нашел.
#144 #466206
>>466186
Пиздц, что за говно? Нахуй ты разделяешь через двоеточие цвета а потом ебешься с этими двоеточиями?
51 Кб, 432x604
#145 #466230
ребят, помогите с такой хуйнёй
https://jsfiddle.net/rud9mz62/
#146 #466240
>>466206
Истину глаголишь, но не я это писал.
34 Кб, 403x604
#148 #466274
>>466244
спасибо , бро! То что надо! я вокруг чегото подобного и крутился, только не додумался передать i в качестве аргумента анонимной самовызывающейся функции
80 Кб, 618x412
#149 #466304
Посаны, начинающая макака хочет попросить у вас совета.

Есть какой-нибудь сферический список хуиток, которые стоило бы реализовать чтобы лучше понять жабаскрипт? Что-то вроде заданий из похапе-треда. Встречал такие только по php и python.

Буду очень благодарен за наводку.
#150 #466310
>>466274
Я вот такой вариант использую, как по мне так наглядней
https://jsfiddle.net/obo92f2b/
#151 #466312
>>466304
на первом занятии курсов по js нам препод дал такое задание
Doubly Linked List

Implement data structure "doubly linked list". It should be done as a stand-alone, independent component, which can be used wherever needed. D.L.L. should have the following methods (you can add your own methods, but the 9 listed below must be and named exactly as stated):

head (returns head of the list)
tail (returns tail of the list)
append (param: new data; add new item to the end of the list)
deleteAt (param: index; deletes item by index; error handling)
at (returns item by index; error handling)
insertAt (inserts item by index; new item should be placed at the specified index)
reverse (rearranges the list's items back-to-front)
each (param: function; applies specified function to each item of the list)
indexOF(param: item; return index of the specified item (first entry))
Some of the list's methods should be chainable.

var list = new List();
...
list.append(item1).append(item2).append(item3).deleteAt(2).reverse().at(0)
DON'T USE ARRAYS FOR STORING ITEMS INSIDE DDL!
Мне помогло понять некоторые вещи
#152 #466314
>>466310
Причём там можно заменить x на i и это тоже будет работать так как области видимости не пересекаются я так и делаю но для понимания лучше так не делать.
118 Кб, 604x604
#153 #466315
>>466310
тоже прикольно. про метод bind() не знал даже. спасибо
#154 #466320
>>466315
Ну без метода bind тебе дальше будет грустно. А так же без apply/call. Сильно рекомендую почитать про эту хуйню. Оно повсеместно используется.
#155 #466327
>>466304
Data Structures and Algorithms with JavaScript книгу качай
41 Кб, 604x475
#156 #466413
>>466312
>>466327
Спасибо бандиты.
#157 #466465
>>466304
Спроси в том же пхп треде задания по js, у них есть
#158 #466466
>>466098
Да нет, хуйня какая-то на самом деле
мимо-70к-год-опыта
#159 #466490
Есть тут гуру реакта? Сегодня решил освоить, набросал простую фигню вида
<div id="container"></div>
<div id="containerMenu"></div>
В обработчиках нажатия элементов меню сделал React.render(<ContentClass />, document.getElementById("container"));
При нажатии в консоли вижу:

>ReactMount: Root element has been removed from its original container. New container:


И что-то зацикливается, причем явно не в моем коде. В чем дело? Как правильно обновлять содержимое контейнера в реакте?
#160 #466542
Есть одна программа , которую надо доработать , так как основу сделал. Так вот , нужно сделать , что бы рандомно выбирались 5 из 10 уже данных вопросов и выводились только они, но мне кажется , что придется все переделывать , дабы это наколдовать , ибо это я делал пару недель

<script type="text/javascript" language="JavaScript">// <![CDATA[
var res="2232433423";
function check_me()
{
var count=0;
with(document.test) {
if (!Q1[0].checked&&!Q1[1].checked&&!Q1[2].checked&&!Q1[3].checked)
{count+=1};
if (!Q2[0].checked&&!Q2[1].checked&&!Q2[2].checked&&!Q2[3].checked)
{count+=1};
if (!Q3[0].checked&&!Q3[1].checked&&!Q3[2].checked&&!Q3[3].checked)
{count+=1};
if (!Q4[0].checked&&!Q4[1].checked&&!Q4[2].checked&&!Q4[3].checked)
{count+=1};
if (!Q5[0].checked&&!Q5[1].checked&&!Q5[2].checked&&!Q5[3].checked)
{count+=1};
if (!Q6[0].checked&&!Q6[1].checked&&!Q6[2].checked&&!Q6[3].checked)
{count+=1};
if (!Q7[0].checked&&!Q7[1].checked&&!Q7[2].checked&&!Q7[3].checked)
{count+=1};
if (!Q8[0].checked&&!Q8[1].checked&&!Q8[2].checked&&!Q8[3].checked)
{count+=1};
if (!Q9[0].checked&&!Q9[1].checked&&!Q9[2].checked&&!Q9[3].checked)
{count+=1};
if (!Q10[0].checked&&!Q10[1].checked&&!Q10[2].checked&&!Q10[3].checked)
{count+=1};
if (count>0) alert("Вы выполнили не все задания. Проверьте себя!")
else answer();
}
}

function control(k, f1,f2,f3,f4,f5,f6,f7,f8,f9,f10) {
if (k==1&&f1.checked) return true;
if (k==2&&f2.checked) return true;
if (k==3&&f3.checked) return true;
if (k==4&&f4.checked) return true;
if (k==5&&f5.checked) return true;
if (k==6&&f6.checked) return true;
if (k==7&&f7.checked) return true;
if (k==8&&f8.checked) return true;
if (k==9&&f9.checked) return true;
if (k==10&&f10.checked) return true;
return false;
}

function answer() {
answ="";
with(document) {
answ+=control(res.charAt(0) ,test.Q1[0],test.Q1[1],test.Q1[2],test.Q1[3])?"1":"0";
answ+=control(res.charAt(1) ,test.Q2[0],test.Q2[1],test.Q2[2],test.Q2[3])?"1":"0";
answ+=control(res.charAt(2) ,test.Q3[0],test.Q3[1],test.Q3[2],test.Q3[3])?"1":"0";
answ+=control(res.charAt(3) ,test.Q4[0],test.Q4[1],test.Q4[2],test.Q4[3])?"1":"0";
answ+=control(res.charAt(4) ,test.Q5[0],test.Q5[1],test.Q5[2],test.Q5[3])?"1":"0";
answ+=control(res.charAt(5) ,test.Q6[0],test.Q6[1],test.Q6[2],test.Q6[3])?"1":"0";
answ+=control(res.charAt(6) ,test.Q7[0],test.Q7[1],test.Q7[2],test.Q7[3])?"1":"0";
answ+=control(res.charAt(7) ,test.Q8[0],test.Q8[1],test.Q8[2],test.Q8[3])?"1":"0";
answ+=control(res.charAt(8) ,test.Q9[0],test.Q9[1],test.Q9[2],test.Q9[3])?"1":"0";
answ+=control(res.charAt(9) ,test.Q10[0],test.Q10[1],test.Q10[2],test.Q10[3])?"1":"0";

showResult();
}
}

function showResult() {
var nok=0;
var i,s;

for (i=0; i<answ.length;i++) {nok+=answ.charAt(i)=="1"?1:0;}
if(nok==10) s="ОТЛИЧНО";
if(nok<10) s="ХОРОШО";
if(nok<7.5) s="УДОВЛЕТВОРИТЕЛЬНО";
if (nok<5) s="НЕУДОВЛЕТВОРИТЕЛЬНО";
document.test.s1.
value="Количество правильных ответов "+nok+". Ваша оценка "+s+". Посмотрите на окно рядом с номером вопроса. Если ответ правильный, там (+). Если ответ ошибочен, там (-).";

with(document.test)
{
if (answ.charAt(0)=="1") {T1.value=" + "} else {T1.value=" - "};
if (answ.charAt(1)=="1") {T2.value=" + "} else {T2.value=" - "};
if (answ.charAt(2)=="1") {T3.value=" + "} else {T3.value=" - "};
if (answ.charAt(3)=="1") {T4.value=" + "} else {T4.value=" - "};
if (answ.charAt(4)=="1") {T5.value=" + "} else {T5.value=" - "};
if (answ.charAt(5)=="1") {T6.value=" + "} else {T6.value=" - "};
if (answ.charAt(6)=="1") {T7.value=" + "} else {T7.value=" - "};
if (answ.charAt(7)=="1") {T8.value=" + "} else {T8.value=" - "};
if (answ.charAt(8)=="1") {T9.value=" + "} else {T9.value=" - "};
if (answ.charAt(9)=="1") {T10.value=" + "} else {T10.value=" - "};
}
}
function showhide(obj){
if(obj == 'none') return 'inline';
else return 'none';
}
// ]]>
</script>
<center><b>ТЕСТ ПО МЕХАНИКЕ</b></center><br/><br/>
<span style="color:#006699;text-decoration:underline;cursor:pointer;" onclick="document.getElementById('instruction').style.display = showhide(document.getElementById('instruction').style.display)">
Инструкция</span>
<br/>
<div id="instruction" style="display: none; width: 100%;">
<ul>
<li>Выберите один из вариантов в каждом из 10 вопросов;</li>
<li>Нажмите на кнопку "Показать результат";</li>
<li>Скрипт не покажет результат, пока Вы не ответите на все вопросы;</li>
<li>Загляните в окно рядом с номером задания. Если ответ правильный, то там (+). Если Вы ошиблись, там (-).</li>
<li>За каждый правильный ответ начисляется 1 балл;</li>
<li>Оценки: менее 5 баллов - НЕУДОВЛЕТВОРИТЕЛЬНО, от 5 но менее 7.5 - УДОВЛЕТВОРИТЕЛЬНО, 7.5 и менее 10 - ХОРОШО, 10 - ОТЛИЧНО;</li>
<li>Чтобы сбросить результат тестирования, нажать кнопку "Сбросить ответы";</li>
</ul>
</div>
<form name="test"><ol>
<li><INPUT type="text" size="1" value="" name="T1"/><b> Стенка движется со скоростью V. Навстречу ей со скоростью u движется шарик. С какой скоростью отскочит шарик в результате абсолютно упругого столкновения со стенкой:</b><br/>
<input type="radio" value="0" name="Q1"/> 2u + V<br />
<input type="radio" value="1" name="Q1"/> u + 2V<br />
<input type="radio" value="2" name="Q1"/> 2u + 2V<br />
<input type="radio" value="3" name="Q1"/> u + V<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T2"/><b> Человек переходит с одного конца лодки длины L на другой. На сколько сместится лодка относительно берега, если масса лодки равна массе человека:</b><br/>
<input type="radio" value="0" name="Q2"/> L<br />
<input type="radio" value="1" name="Q2"/> L/2<br />
<input type="radio" value="2" name="Q2"/> L/3<br />
<input type="radio" value="3" name="Q2"/> L/4<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T3"/><b> Космический корабль движется со скоростью V. Скорость истечения газов относительно корабля - u. Расход топлива - q. Какова сила тяги двигателя? </b><br/>
<input type="radio" value="0" name="Q3"/> q(u+V)<br />
<input type="radio" value="1" name="Q3"/> q(u-V)<br />
<input type="radio" value="2" name="Q3"/> qu<br />
<input type="radio" value="3" name="Q3"/> q(dV/dt)<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T4"/><b> Какое тело скатится с горки быстрее: полая сфера или шар.</b><br/>
<input type="radio" value="0" name="Q4"/> Полая сфера<br />
<input type="radio" value="1" name="Q4"/> Шар<br />
<input type="radio" value="2" name="Q4"/> Одинаково <br />
<input type="radio" value="3" name="Q4"/> Зависит от толщины стенки сферы<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T5"/><b> Какое из утверждений ниже является ложным:</b><br/>
<input type="radio" value="0" name="Q5"/> Гравитационное поле внутри полой сферы равно нулю.<br />
<input type="radio" value="1" name="Q5"/> Две сферы притягиваются друг к другу так, как если бы их массы были сосредоточены в центре сфер. <br />
<input type="radio" value="2" name="Q5"/> Если внутри однородного шара имеется сферическая полость, центр которой не совпадает с центром шара, то гравитационное поле внутри такой полости будет однородным.<br />
<input type="radio" value="3" name="Q5"/> Напряжённость гравитационного поля внутри сплошного шара квадратично зависит от расстояния до его центра.<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T6"/><b> Каков момент инерции кольца массы m и радиуса R относительно оси, лежащей в плоскости кольца и проходящей через его диаметр:</b><br/>
<input type="radio" value="0" name="Q6"/> mRR<br />
<input type="radio" value="1" name="Q6"/> 2mR
R<br />
<input type="radio" value="2" name="Q6"/> mRR/2<br />
<input type="radio" value="3" name="Q6"/> mR
R/4<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T7"/><b> Небольшой лёгкий шарик упруго ударяется о массивный неподвижный шар и отскакивает под углом 90° к направлению своего первоначального движения. Под каким углом к направлению начального движения лёгкого шарика будет двигаться массивный шар, если трения между шарами в момент удара нет?</b><br/>
<input type="radio" value="0" name="Q7"/> 0°<br />
<input type="radio" value="1" name="Q7"/> 90°<br />
<input type="radio" value="2" name="Q7"/> 45° <br />
<input type="radio" value="3" name="Q7"/> Тяжёлый шар не будет двигаться<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T8"/><b> Какое из утверждений ниже неправильное:</b><br/>
<input type="radio" value="0" name="Q8"/> Во всяком бегущем упругом возмущении полная энергия распределяется поровну между кинетической и потенциальной<br />
<input type="radio" value="1" name="Q8"/> Во всяком бегущем упругом возмущении плотность кинетической энергии в любой точке равна плотности потенциальной энергии<br />
<input type="radio" value="2" name="Q8"/> В стоячей волне переноса энергии не происходит и плотность кинетической энергии не совпадает с плотностью потенциальной энергии.<br />
<input type="radio" value="3" name="Q8"/> В бегущей синусоидальной волне средняя потенциальная энергия равна средней кинетической энергии, а колебания плотности кинетической и потенциальной энергии сдвинуты по фазе на ?/2.<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T9"/><b> mvv/2+P+rgh=const - это:</b><br/>
<input type="radio" value="0" name="Q9"/> Формула Пуазейля<br />
<input type="radio" value="1" name="Q9"/> Уравнение Бернулли<br />
<input type="radio" value="2" name="Q9"/> Формула Стокса<br />
<input type="radio" value="3" name="Q9"/> Формула Рейнольдса<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T10"/><b> Грузик массы m колеблется на пружине с амплитудой A и угловой частотой w. Какова максимальная скорость грузика?</b><br/>
<input type="radio" value="0" name="Q10"/> Aw
w<br />
<input type="radio" value="1" name="Q10"/> wwA/2<br />
<input type="radio" value="2" name="Q10"/> Aw<br />
<input type="radio" value="3" name="Q10"/> Aww*m<br />
<br/></li></ol>
<CENTER>
<P><TEXTAREA name="s1" rows="4" cols="70" readonly> </TEXTAREA> </P>
<INPUT onclick="check_me()" type="button" value="Показать результат"/>
<INPUT type="reset" value="Сбросить ответы"/>
</CENTER>
</form>
#160 #466542
Есть одна программа , которую надо доработать , так как основу сделал. Так вот , нужно сделать , что бы рандомно выбирались 5 из 10 уже данных вопросов и выводились только они, но мне кажется , что придется все переделывать , дабы это наколдовать , ибо это я делал пару недель

<script type="text/javascript" language="JavaScript">// <![CDATA[
var res="2232433423";
function check_me()
{
var count=0;
with(document.test) {
if (!Q1[0].checked&&!Q1[1].checked&&!Q1[2].checked&&!Q1[3].checked)
{count+=1};
if (!Q2[0].checked&&!Q2[1].checked&&!Q2[2].checked&&!Q2[3].checked)
{count+=1};
if (!Q3[0].checked&&!Q3[1].checked&&!Q3[2].checked&&!Q3[3].checked)
{count+=1};
if (!Q4[0].checked&&!Q4[1].checked&&!Q4[2].checked&&!Q4[3].checked)
{count+=1};
if (!Q5[0].checked&&!Q5[1].checked&&!Q5[2].checked&&!Q5[3].checked)
{count+=1};
if (!Q6[0].checked&&!Q6[1].checked&&!Q6[2].checked&&!Q6[3].checked)
{count+=1};
if (!Q7[0].checked&&!Q7[1].checked&&!Q7[2].checked&&!Q7[3].checked)
{count+=1};
if (!Q8[0].checked&&!Q8[1].checked&&!Q8[2].checked&&!Q8[3].checked)
{count+=1};
if (!Q9[0].checked&&!Q9[1].checked&&!Q9[2].checked&&!Q9[3].checked)
{count+=1};
if (!Q10[0].checked&&!Q10[1].checked&&!Q10[2].checked&&!Q10[3].checked)
{count+=1};
if (count>0) alert("Вы выполнили не все задания. Проверьте себя!")
else answer();
}
}

function control(k, f1,f2,f3,f4,f5,f6,f7,f8,f9,f10) {
if (k==1&&f1.checked) return true;
if (k==2&&f2.checked) return true;
if (k==3&&f3.checked) return true;
if (k==4&&f4.checked) return true;
if (k==5&&f5.checked) return true;
if (k==6&&f6.checked) return true;
if (k==7&&f7.checked) return true;
if (k==8&&f8.checked) return true;
if (k==9&&f9.checked) return true;
if (k==10&&f10.checked) return true;
return false;
}

function answer() {
answ="";
with(document) {
answ+=control(res.charAt(0) ,test.Q1[0],test.Q1[1],test.Q1[2],test.Q1[3])?"1":"0";
answ+=control(res.charAt(1) ,test.Q2[0],test.Q2[1],test.Q2[2],test.Q2[3])?"1":"0";
answ+=control(res.charAt(2) ,test.Q3[0],test.Q3[1],test.Q3[2],test.Q3[3])?"1":"0";
answ+=control(res.charAt(3) ,test.Q4[0],test.Q4[1],test.Q4[2],test.Q4[3])?"1":"0";
answ+=control(res.charAt(4) ,test.Q5[0],test.Q5[1],test.Q5[2],test.Q5[3])?"1":"0";
answ+=control(res.charAt(5) ,test.Q6[0],test.Q6[1],test.Q6[2],test.Q6[3])?"1":"0";
answ+=control(res.charAt(6) ,test.Q7[0],test.Q7[1],test.Q7[2],test.Q7[3])?"1":"0";
answ+=control(res.charAt(7) ,test.Q8[0],test.Q8[1],test.Q8[2],test.Q8[3])?"1":"0";
answ+=control(res.charAt(8) ,test.Q9[0],test.Q9[1],test.Q9[2],test.Q9[3])?"1":"0";
answ+=control(res.charAt(9) ,test.Q10[0],test.Q10[1],test.Q10[2],test.Q10[3])?"1":"0";

showResult();
}
}

function showResult() {
var nok=0;
var i,s;

for (i=0; i<answ.length;i++) {nok+=answ.charAt(i)=="1"?1:0;}
if(nok==10) s="ОТЛИЧНО";
if(nok<10) s="ХОРОШО";
if(nok<7.5) s="УДОВЛЕТВОРИТЕЛЬНО";
if (nok<5) s="НЕУДОВЛЕТВОРИТЕЛЬНО";
document.test.s1.
value="Количество правильных ответов "+nok+". Ваша оценка "+s+". Посмотрите на окно рядом с номером вопроса. Если ответ правильный, там (+). Если ответ ошибочен, там (-).";

with(document.test)
{
if (answ.charAt(0)=="1") {T1.value=" + "} else {T1.value=" - "};
if (answ.charAt(1)=="1") {T2.value=" + "} else {T2.value=" - "};
if (answ.charAt(2)=="1") {T3.value=" + "} else {T3.value=" - "};
if (answ.charAt(3)=="1") {T4.value=" + "} else {T4.value=" - "};
if (answ.charAt(4)=="1") {T5.value=" + "} else {T5.value=" - "};
if (answ.charAt(5)=="1") {T6.value=" + "} else {T6.value=" - "};
if (answ.charAt(6)=="1") {T7.value=" + "} else {T7.value=" - "};
if (answ.charAt(7)=="1") {T8.value=" + "} else {T8.value=" - "};
if (answ.charAt(8)=="1") {T9.value=" + "} else {T9.value=" - "};
if (answ.charAt(9)=="1") {T10.value=" + "} else {T10.value=" - "};
}
}
function showhide(obj){
if(obj == 'none') return 'inline';
else return 'none';
}
// ]]>
</script>
<center><b>ТЕСТ ПО МЕХАНИКЕ</b></center><br/><br/>
<span style="color:#006699;text-decoration:underline;cursor:pointer;" onclick="document.getElementById('instruction').style.display = showhide(document.getElementById('instruction').style.display)">
Инструкция</span>
<br/>
<div id="instruction" style="display: none; width: 100%;">
<ul>
<li>Выберите один из вариантов в каждом из 10 вопросов;</li>
<li>Нажмите на кнопку "Показать результат";</li>
<li>Скрипт не покажет результат, пока Вы не ответите на все вопросы;</li>
<li>Загляните в окно рядом с номером задания. Если ответ правильный, то там (+). Если Вы ошиблись, там (-).</li>
<li>За каждый правильный ответ начисляется 1 балл;</li>
<li>Оценки: менее 5 баллов - НЕУДОВЛЕТВОРИТЕЛЬНО, от 5 но менее 7.5 - УДОВЛЕТВОРИТЕЛЬНО, 7.5 и менее 10 - ХОРОШО, 10 - ОТЛИЧНО;</li>
<li>Чтобы сбросить результат тестирования, нажать кнопку "Сбросить ответы";</li>
</ul>
</div>
<form name="test"><ol>
<li><INPUT type="text" size="1" value="" name="T1"/><b> Стенка движется со скоростью V. Навстречу ей со скоростью u движется шарик. С какой скоростью отскочит шарик в результате абсолютно упругого столкновения со стенкой:</b><br/>
<input type="radio" value="0" name="Q1"/> 2u + V<br />
<input type="radio" value="1" name="Q1"/> u + 2V<br />
<input type="radio" value="2" name="Q1"/> 2u + 2V<br />
<input type="radio" value="3" name="Q1"/> u + V<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T2"/><b> Человек переходит с одного конца лодки длины L на другой. На сколько сместится лодка относительно берега, если масса лодки равна массе человека:</b><br/>
<input type="radio" value="0" name="Q2"/> L<br />
<input type="radio" value="1" name="Q2"/> L/2<br />
<input type="radio" value="2" name="Q2"/> L/3<br />
<input type="radio" value="3" name="Q2"/> L/4<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T3"/><b> Космический корабль движется со скоростью V. Скорость истечения газов относительно корабля - u. Расход топлива - q. Какова сила тяги двигателя? </b><br/>
<input type="radio" value="0" name="Q3"/> q(u+V)<br />
<input type="radio" value="1" name="Q3"/> q(u-V)<br />
<input type="radio" value="2" name="Q3"/> qu<br />
<input type="radio" value="3" name="Q3"/> q(dV/dt)<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T4"/><b> Какое тело скатится с горки быстрее: полая сфера или шар.</b><br/>
<input type="radio" value="0" name="Q4"/> Полая сфера<br />
<input type="radio" value="1" name="Q4"/> Шар<br />
<input type="radio" value="2" name="Q4"/> Одинаково <br />
<input type="radio" value="3" name="Q4"/> Зависит от толщины стенки сферы<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T5"/><b> Какое из утверждений ниже является ложным:</b><br/>
<input type="radio" value="0" name="Q5"/> Гравитационное поле внутри полой сферы равно нулю.<br />
<input type="radio" value="1" name="Q5"/> Две сферы притягиваются друг к другу так, как если бы их массы были сосредоточены в центре сфер. <br />
<input type="radio" value="2" name="Q5"/> Если внутри однородного шара имеется сферическая полость, центр которой не совпадает с центром шара, то гравитационное поле внутри такой полости будет однородным.<br />
<input type="radio" value="3" name="Q5"/> Напряжённость гравитационного поля внутри сплошного шара квадратично зависит от расстояния до его центра.<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T6"/><b> Каков момент инерции кольца массы m и радиуса R относительно оси, лежащей в плоскости кольца и проходящей через его диаметр:</b><br/>
<input type="radio" value="0" name="Q6"/> mRR<br />
<input type="radio" value="1" name="Q6"/> 2mR
R<br />
<input type="radio" value="2" name="Q6"/> mRR/2<br />
<input type="radio" value="3" name="Q6"/> mR
R/4<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T7"/><b> Небольшой лёгкий шарик упруго ударяется о массивный неподвижный шар и отскакивает под углом 90° к направлению своего первоначального движения. Под каким углом к направлению начального движения лёгкого шарика будет двигаться массивный шар, если трения между шарами в момент удара нет?</b><br/>
<input type="radio" value="0" name="Q7"/> 0°<br />
<input type="radio" value="1" name="Q7"/> 90°<br />
<input type="radio" value="2" name="Q7"/> 45° <br />
<input type="radio" value="3" name="Q7"/> Тяжёлый шар не будет двигаться<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T8"/><b> Какое из утверждений ниже неправильное:</b><br/>
<input type="radio" value="0" name="Q8"/> Во всяком бегущем упругом возмущении полная энергия распределяется поровну между кинетической и потенциальной<br />
<input type="radio" value="1" name="Q8"/> Во всяком бегущем упругом возмущении плотность кинетической энергии в любой точке равна плотности потенциальной энергии<br />
<input type="radio" value="2" name="Q8"/> В стоячей волне переноса энергии не происходит и плотность кинетической энергии не совпадает с плотностью потенциальной энергии.<br />
<input type="radio" value="3" name="Q8"/> В бегущей синусоидальной волне средняя потенциальная энергия равна средней кинетической энергии, а колебания плотности кинетической и потенциальной энергии сдвинуты по фазе на ?/2.<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T9"/><b> mvv/2+P+rgh=const - это:</b><br/>
<input type="radio" value="0" name="Q9"/> Формула Пуазейля<br />
<input type="radio" value="1" name="Q9"/> Уравнение Бернулли<br />
<input type="radio" value="2" name="Q9"/> Формула Стокса<br />
<input type="radio" value="3" name="Q9"/> Формула Рейнольдса<br />
<br/></li><li><INPUT type="text" size="1" value="" name="T10"/><b> Грузик массы m колеблется на пружине с амплитудой A и угловой частотой w. Какова максимальная скорость грузика?</b><br/>
<input type="radio" value="0" name="Q10"/> Aw
w<br />
<input type="radio" value="1" name="Q10"/> wwA/2<br />
<input type="radio" value="2" name="Q10"/> Aw<br />
<input type="radio" value="3" name="Q10"/> Aww*m<br />
<br/></li></ol>
<CENTER>
<P><TEXTAREA name="s1" rows="4" cols="70" readonly> </TEXTAREA> </P>
<INPUT onclick="check_me()" type="button" value="Показать результат"/>
<INPUT type="reset" value="Сбросить ответы"/>
</CENTER>
</form>
#161 #466551
Посоветуйте шаблонизатор для клиента. Пробовал Tempo, но он что-то давно не обновляется. И не очень удобный.
Короче хочу получать json, вытаскивать по id шаблон из дома, и накладывать json на шаблон.
#162 #466552
>>466551
Mustache
#163 #466553
>>466552
аргументы?
#164 #466554
>>466553
Мне он удобен.
#165 #466565
>>466551
Гугли, был какойто сайтик с шаблонизаторами клиенсткими, типа кликаешь какие нужны фичи, шаблонизаторы сортируются
#166 #466566
>>466542
Ой, иди нахуй
#167 #466569
>>466553
Да иди ты нахуй, шаблонизаторы в 2015 году обсуждать, сколько можно-то уже.
Если нужен logic-less шаблонизатор - то mustache/hogan, если что-то поумнее - то handlebars, если нужна логика в шаблонах - то dustjs или nunjucks.
#168 #466570
>>466566
Спасибо за совет , но он мне не поможет это сделать .
#169 #466571
>>466490

>ReactMount: Root element has been removed from its original container


Сделай пример, из того что ты говоришь непонятно почему так.
Возможно где-то происходит модификация дом-элементов в контейнере.
Ещё другой вопрос такой возникает, что тебе мешает сделать это Menu тоже компонентом реакта?
#170 #466573
>>466570
Суть совета в том, что тебе надо пойти нахуй.
Если совет поможет тебе пойти нахуй, то всем станет лучше.
#171 #466574
>>466573
А с чего вдруг такая реакция ?
#172 #466575
>>466574
Потому что ты выложил в посте кучу своего говнокода, который не форматирован и который невозможно здесь запустить, и при это ты просишь помощи. А еще приходится тебе это объяснять.
#173 #466577
>>466569
сам иди нахуй, я backend программист
sage #174 #466579
>>466565

>> 466551


http://garann.github.io/template-chooser/

алсо React, если нужна производительность
Handlebars - самый распространенный
#175 #466590
>>466542

><script type="text/javascript" language="JavaScript">// <![CDATA[



Умилился.
#176 #466601
>>466577

>я backend программист


Звучит как "я даю только в анал".
#177 #466607

>nw.js


Ебать, как я только жил без этого раньше?!
впервые зашёл в раздел
#178 #466798
Хочу перекатиться во фронтенд-программисты. Что учить, чтобы быть успешным? Умею базово js,css,html
#179 #466799
>>466798
Алсо, меня очень тянут в ExtJS, но я не уверен что это, так сказать , лучшее из возможного.
#180 #466813
>>466799
Углубляй знания, учи фреймворки (блэкбон, ангуляр, вот это всё).
И ES6, конечно.
#181 #466890
Как с помощью JS определить нижнюю границу элемента в пикселях от верха страницы?
#182 #466930
>>466890
Гугли offset
#183 #466931
>>466890
Гугли offset
#184 #466959

>Сейчас, на JS можно делать игры (phaser, cocos, etc.)


Это говно смехотворно.

>3D графику (three.js)


3D-графику не сложнее хеллоуворлдного кубика, всё остальное тормозит.

>можно делать десктоп приложения(node-webkit)


Охуенные десктоп-приложения. Можно было ещё 10 лет назад такие делать на IE 6.0 встроенном через COM. А про QML ОП не знает.
#185 #467246
Господа, помогите ньюфагу, доставьте функцию, которая проверяет введенный айпи на валидность. Все, что я нагуглил - не получилось реализовать. Делал через match.
Нужно что-то вроде
function checkIp(string) {
if (...) return true;
else return false
}
#186 #467309
>>462898

>http://learn.javascript.ru/


Начал обучение - появился вопрос. Откуда столько идиотов в комментариях?
#187 #467316
>>467309
Самый популярный россиянский ресурс, а что ты хотел? Без идиотов - гугли туториалы и книги энглиш онли.
#188 #467335
>>467316
Ну си-сообщество более интеллектуально выглядит, несмотря на обилие студентов. А тут сложилось впечатление что каждая бабка и школьник в веб подались. По туториалам учить сложнее - надо чтобы кто-нибудь акценты расставил.
#189 #467458
>>465360
Твой сайтик должен отдавать хэдэр:
Access-Control-Allow-Origin: *
#190 #467476
хуй
#191 #467537
>>467246

>if true return true


>else return false


Пиздец, ты даже заготовку не смог сделать.
42 Кб, 650x366
#192 #467593
Джаваны, есть вот такая хуита -

{"type":"channel_counters","data":{"channel_id":"5457","clients_in_channel":"668","users_in_channel":233}}

Мне нужно вывести только значение users_in_channel.
Не всю шляпу, а только users_in_channel.

[CODE]
socket.onmessage = function(event) {
console.log("Ответ: " + event.data);
//document.getElementById("sock-info").innerHTML += (event.data+"<br />");
};
[/CODE]

event.data - выводит весь текст что приходит с сервера, а мне такое не нужно. Нужно только например users_in_channel. Алсо console.log(event.data[9]); Не работает - выводит какие-то куски по 1 букве.
#193 #467642
#194 #467743
>>467246
function checkIp(ip) {
return /твоя регулярка/.test(ip);
}
#195 #467744
>>467593
event.data.users_in_channel
#196 #468060
Хочу сделать десктопное приложение на JS, в котором будет некая БД с данными. Нужно, что бы эта БД синхронизировалась между разными компьютерами. Как лучше поступить ? Вроде слышал, что Dropbox и Google Drive могут работать не только, как файлопомойка, но и предоставляют какой-то API для подобных вещей. Кто-нибудь пробовал ?
#197 #468124
Анон помоги, я недопонимаю, наврное упустил из виду.
1)Зачем пустые скобочки в самом конце
2)defaults: function - что это за дефолтс и двоеточие? Подскажи, няша.

var lodash = (function() {

var version;
function assignDefaults() { ... }

return {
defaults: function() { }
}

})();
#198 #468128
>>463797
какое мерзкое ебало
#200 #468145
>>468124
1. () вызывают только что объявленную анонимную ф-ю
var a = (function() { return 23; })();
поместит в a значение 23.

2. обычный литерал объекта
{ name: 'DIMONCHIK' }
а у тебя
{ defaults: function() }
#201 #468148
>>468060
Dropbox пробовал и гугловые кажется фьюжен тейблс или как-то так. Читай мануал да делай.
#202 #468151
>>467593
Это полный пиздец… Я ухожу…
#203 #468161
>>468145
>>468135

Пять лолей обоим
#204 #468244
>>468151
Ну так я же не говорил, что я учу/учил/читал жс.
#205 #468266
>>468148
Почитал, Dropbox закрыли свой API, т.к. он не пользовался достаточной популярностью. Google не хотелось бы, но видимо придется. Когда последний раз изучал их документацию, готов был выебать каждого ржавой кочергой.
#206 #468304
>>468266
OneDrive попробуй.
#207 #468319
>>468304
Спасибо. А есть какие-то примеры приложений, которые используют что-то из такого рода синхронизаций ? И есть ли какие-то альтернативы таким сервисам ?
#208 #468362
>>468266
Прочитай еще раз. Дропбокс закрыл старый АПИ тому что открыли новый, более удобный для разрабов.
#209 #468366
>>468362
все таки я в глаза ебусь
#210 #468375
>>468362
Ткни, пожалуйста, где это написано ? Я второй раз перечитал, что они закрывают Datastore API и помогают существующим приложениям мигрировать на альтернативы. Core API позволяет создавать файлы и всё такое, но это, насколько я понимаю, немного не то
#211 #468453
>>468060
Тащетма возьми какой-нибудь монго сервис и пили себе
#212 #468726
>>464672

>Хлоргексидина биглюконат


Лол. Она ебанутая?
10 Кб, 190x261
#213 #468731
Проверка одной хуйни на ID ютуба, id-grabber

[CODE]
var url = messegetext;
var videoid = url.match(/(?:https?:\/{2})?(?:w{3}\.)?youtu(?:be)?\.(?:com|be)(?:\/watch\?v=|\/)([^\s&]+)/);
if(videoid != null) {
console.log("video id = ",videoid[1]);

} else {
console.log("The youtube url is not valid.");
}
[/CODE]

Так вот как вставить videoid в html код страницы

[CODE]
<iframe width="100" height="100" src="https://www.youtube.com/embed/ МЕСТО VIDEOID ?autoplay=1" frameborder="0" allowfullscreen></iframe>

[/CODE]

Я знаю только document.getElementById() или же хуярить скрипт прямо в .html документе, а как из стороннего вставить, еще и без классов чет вообще в душе не ебу как. На пхп с этим проще.
49 Кб, 576x432
#215 #468774
>>468731
Я думал есть какой-то другой метод просто. Сделал через document.getElementById(). Но это какой-то костыль ебучий, не?
Только еще проблема - автоплей ютуба не работает.
#216 #468778
>>468774
Причем тут костыль, ты что, ебанутый?
110 Кб, 500x500
#217 #468779
>>468778
Почему автоплей ютуба не работает? Через document.getElementById().innerHTML
#218 #468780
>>468779
Объясни внятно что ты хочешь сделать, придурок картиношный
#219 #468783
>>468780
Проверка на ссылку ютуба, берет ид из ссылки обычной, вставляет ид в <iframe> код ютуба с ?autoplay=1
Далее этот код встраивает в html страницу. Анон выше скинул пример, там автоплей работает. У меня нет. Почему.

>>468731
sage #220 #468789
>>462898

> Объектно ориентированный языка


Тугую струю мочи тебе в ебало, долбоеб.
#221 #468791
>>462941
Форич уже написал?
#222 #468793
>>468783
Ты какой-то ебанутый. Уебывай
#223 #468826
Нодоебы-десктопщики тут есть? Короче, когда я еще говнокодил на до-диезе, там можно было шустро запустить mplayer в слейв-моде, прицепив его в элементу формы, и играть видяшечки его средствами, причем довольно неплохо и нативно все выглядело. Вопрос такой - можно ли захуячить в десктопном нодоприложении то же самое?
#224 #468828
>>468826
Десктопный нод - это же ебучий браузер, нахуя заебы с мплеером если можно играть видео как в браузере?
#225 #468831
>>468828
Мплеер жрет все, а браужет 3,5 формата же.
#226 #468833
>>468831
*браузер
быстрофикс
#227 #468834
>>468831
Так у них там есть флаги для сборки чтобы и остальные форматы играли.
#228 #468835
>>468834
Пытаться сэкономить на поддержке, переезжая на скрипты, и при этом обрести еблю с самостоятельной сборкой - это какая-то сомнительная выгода.
#229 #468836
>>468835
То, что ты выбрал nw уже само по себе та еще ебля и забивание гвоздей микроскопом, скрипт там, скрипт тут врядли что-то изменит.
#230 #468838
>>468826

>запустить mplayer в слейв-моде


Ты не подумал, что в ноде есть какой-то стандартный способ апуска дочерних процессов?
Подсказка - он есть, модуль child_process, функция spawn()
#231 #468839
>>468838
Суть не в слейв-моде, а в прихуяривании рендера мплеера к вебкиту. Так-то запустить дочерний прочесс и контролить его кнопочками вообще не проблема, а вот сделать так, чтобы видео игралось не в соседнем окне, а в нужном тебе, да еще и прицепилось к нужному DOM-узлу (а иначе нахуй вообще вся эта канитель), вот это уже да, трабла, за ней я сюда и пришел.
#232 #468841
>>468453
Спасибо, подумаю в этом направлении
#233 #468923
Есть 5 текстовых инпутов. Нужно проверять сколько из этих 5ти инпутов заполнили и при клике на кнопку создавать элементы, количество которых равно количеству заполненных инпутов.

Как это сделать на angular?
#234 #468942
Наверно платиновый вопрос, но уж извините. Сам с js особо не сталкивался, но тут прохожу один курс и мне говорят, используй метод jquery.getjson(), чтобы с помощью api nytimes получить статьи по запросу. Но как я могу это сделать, если джаваскрипт не может соединяться с другими сайтами. На стаковерфлоу по этому поводу нет ответа с галочкой. По-любому есть какое-то стандартное решение.
175 Кб, 807x807
#236 #469302
ребят, помогите разобраться с пустячком.
Я хочу добавить в prototype несколько функций.
Не хочется писать так:
HTMLElement.prototype.addClass = function () {
//код
};
HTMLElement.prototype.removeClass = function () {
//ещё код
};
HTMLElement.prototype.toggleClass = function () {
//код
};

Может есть вариант(уверен что есть) как-то по-красивши, по-лаконичнее это оформить?
#237 #469316
>>469302

>Может есть вариант(уверен что есть) как-то по-красивши, по-лаконичнее это оформить?



Да, <script src="jquery.js"></script>
#238 #469390
Как сделать, чтобы при загрузке страницы активировался определённый js код? То есть, если перехожу на страницу через одну ссылку, то один код, если через другую - то другой.
#239 #469400
>>469390
referer
#240 #469402
>>469390
http://stackoverflow.com/questions/979975/how-to-get-the-value-from-the-url-parameter
Или вот. Я просто нихуя не понял, что ты пытаешься спросить.
#241 #469405
>>469400
>>469402
Спасибо! Я разобрался.
490 Кб, 2560x1704
#242 #469486
САП, котаны. Есть расширения для хрома, чтобы обновлять страницу на подобии куклоскрипта(я так понимаю, он чере аякс это делает)? Нашел в сторе, но там хуита, которая рефрешит всю страницу. Могу программировать на уровне школы. Если почитаю, то можно что-нибудь слепить. Наверное. Стоит заморачиваться?
#243 #469595
>>469302
вопрос актуален. сторонние библиотеки использовать нельзя
#244 #469596
Может ли нода взаимодействовать с sql базами? Где можно об этом почитать.
#245 #469603
>>469595
Тебе блядь видимо мозг использовать нельзя, вот ты и занимаешься какой-то хуйнёй.
#246 #469620
>>469603
братан, это препод задал такую хуету-написать свою урезанную версию jQuery. я может не очень корректно мысли свои выражать умею, ну уж прости
sage #248 #469736
>>469302
Алсо DOM-элементы нельзя расширять своими методами (в IE не будет работать)
#249 #469772
>>469620
твой вариант единственно верный
#250 #469773
>>469733
А, вот про это я забыл. Так годно
#251 #469790
Сап. Пытаюсь запустить первый пример отсюда https://keybase.io/kbpgp/docs/generating_a_pair, но внутрь функции generate оно заходить не хочет, что за хуйня?
#252 #469806
>>469790
Давай jsbin какой-нибудь, чтоли. И да, годная либо, спасибо.
#253 #469834
>>469733
>>469736
>>469772
всем спасибо.
#254 #469843
>>469806
http://jsbin.com/holuwozimi/1/ хз как этим пользоваться, не смог библиотеку подключить

Есть еще годная https://github.com/openpgpjs/openpgpjs, но я и ее не смог осилить. Может с ней получится помочь? http://jsbin.com/vilecifita/1/ В логах мне писал "[Log] Error generating keypair using native WebCrypto... falling back back to js! (openpgp.js, line 12422)"
#255 #469938
Может ли нода взаимодействовать с sql базами? Где можно об этом почитать?
#256 #469958
>>469938
Идёшь на NPM > ищешь необходимую тебе БД > профит.
Вот пример: https://www.npmjs.com/package/mysql
#257 #469972
>>469843
Ковырну, но попозже
#258 #469974
>>469972
Спасибо, буду ждать
#259 #469977
>>469974
Расскажи, что пишешь, зачем тебе pgp?
#260 #469981
>>469974
Чет непонятно нихуя, не могу сходу въехать в эту либу. Еще и cdn не нашел
#261 #469983
>>469977
Пишу диплом, дожлна на выходе получиться секьюрная почта, во многом аналог proton mail, на вике есть статья про этот сервис.
#262 #469984
>>469981

>Еще и cdn не нашел


что такое cdn?
#263 #469988
>>469981
>>469843
я подебажил вторую либу (openpgpjs), ключи создаются, но после выполнения generateKeyPair(), то что после then() не выполняется.

openpgp.generateKeyPair(options).then(function (keypair) {
// success
var privkey = keypair.privateKeyArmored;
var pubkey = keypair.publicKeyArmored;
console.log('success');
}).catch(function (error) {
console.log('error');
});
#264 #469990
>>469984
content delivery network
#265 #470003
>>469988
Нет, все таки ключи не создаются. Проглядел ночью, но и в логи ничего не пишет.
#266 #470017
>>469988
А у тебя промисы в браузере есть?
#267 #470033
>>470017
Проверил сейчас на работе, firefox 37.0.2, согласно http://caniuse.com/#feat=promises они есть, эффект тот же.
#268 #470199
Объясните про асинхронность Ноды. У меня сервер, который принимает реквест от клиента и делает инсерт в базу данных. Но поскольку инсерт асинхронный, я не могу в случае ошибки вернуть клиенту статус, отличный от ОК. Как это вообще в Ноде делается?
#269 #470215
>>470199
Почему не можешь? Что мешает? Код покажи
#270 #470216
>>470215
Псевдоговнокод
.get('user', function (req, res) {
db.get("users", req.params.id, function (err, user) {
if (err) {
res.send(400)
} else {
res.send(200);
}
})
})
#271 #470217
Это >>470216 вот этому - >>470199
#272 #470370
>>470199
Ехал коллбэк через коллбэк
#273 #470391
>>470370
Я думаю, суть он уловил. А дальше уже пусть сам переходит на промисы, iced coffee и прочее, если нужно
#276 #470644
>>470637
Выебываться на хабр, сидя в праше, что может быть умнее?
#277 #470645
>>470644
хабрапетух закукарекал
#278 #470646
>>470645
Хочешь банан?
#279 #470675
Господа, поможете нюфане?
Гоняю свою чёрную коробку, но она перемещается отрывисто, а я хочу добиться плавности.
Код таков.
blackbox.run = function(where) {
if (where === 'left') {
\t\t\tblackbox.positionX-=10;
\t\t\t$('.myChar').animate({
\t\t\t\t\t\t'left' : blackbox.positionX}, 00);
\t\t}
\t\tif (where === 'right') {
\t\t\tblackbox.positionX+=10;
\t\t\t$('.myChar').animate({
\t\t\t\t\t'left' : blackbox.positionX}, 00);
\t\t}
}

В чём загвоздка? Ящитаю, что нужно обеспечить плавное, но в то же время и быстрое изменение переменной, но подходящего метода не нашел.
#280 #470678
>>470675
Ебаааааать, извините.
Подскажите, куда выкладывать код, чтобы сохранялось форматирование.
#281 #470686
>>470678
pastebin.com
ideone.com
also,

>Тег [code] работает через жабаскрипт-костыль: https://github.com/ololoepepe/MakabaCode

#282 #470689
http://pastebin.com/D7Yk4viM
Вот он.
>>470686
Спасибо тебе.
#283 #470782
Пацаны, я смог в мусташ. С теперь заебись, да?
#284 #470808
>>470782

>мусташ


Чего блядь?
#285 #470814
>>470637 У тебя какие-то возражения, петушок?
Статья охуенная, рекомендую.
#286 #470816
>>470808
mustache.js
206 Кб, 1920x1440
#287 #470823
>>470782
>>470816

>скобочки))00


>я смог в мусташ

#288 #470884
Есть один контроллер. Он используется в angular ui router по определенному url. Когда пользователь переходит на этот url, то срабатывает контроллер и происходят следующие вещи:
- в $scope.content подгружается HTML
- в контенте ищется определенный элемент и экран скролится до позиции этого элемента.

Проблема в том, что я никак не могу добиться того, что бы поиск элемента происходит ПОСЛЕ того, как контент отрендерится. Это просто пиздец, сижу уже хуй знает сколько. $viewContentLoading и $stateChangeSuccess срабатывает до того, как контент загрузится.
Как можно обойти данное поведение ? Пока что в голову приходит только $timeout, но это максимум уебищно
sage #289 #470981
>>470675

> 00


штоу?

Посмотри внимательнее
http://api.jquery.com/animate/

[code]
$(element).animate({
left: finalValueOfPixels
}, 300);
[/code]
#290 #470993
http://pastebin.com/izygihwp
Помогите пожалуйста. Какая-то шляпа с аяксом. Запрос есть и вроде бы отправляется(фф в логах пишет, что запрос был), но у него время 0мс и на сервере ничего не отрабатывает, ответа на запрос нет. (сервер запросы принимает, проверил утилитой). Что может быть?
sage #291 #471016
>>470993

> success: console.log('success')



Ты присвоил свойству результат выполнения функции console.log, а надо присвоить функцию, которая потом будет вызвана

> success: function () {console.log('ssuuccess');}

#292 #471019
>>471016

>success: function () {console.log('ssuuccess');}


Это я уже исправил, но не помогает.
sage #293 #471040
>>470993
Ну а без аякса этот урл работает? curl'ом можно проверить.
#294 #471041
>>471040
Ой, я случайно все засагал.
#295 #471043
>>470993
А какой ответ-то? Судя по коду ты только в соснольку печатаешь что-то, или в жабе так с сервера отправляют ответ?
#296 #471044
>>470884
Пробовал через resolve $routeProvider?
#297 #471064
Подскажите следующий момент.
Если я выполняю запрос вида http://pastebin.com/DpFua48k
Как мне во время алерта дождаться выполнение запроса.
Первый раз алерт выскакивает пустой, а второй раз с предыдущей инфой.
Гугл головрт про async: false, но не помогает.
Может кто объяснить?
#298 #471065
>>471064
http://pastebin.com/Wp3FE1MA
точнее даже так
#299 #471084
>>470814
Комментарии у статьи, к счастью, адекватнее.
#300 #471088
>>471043
Ответа нет. Метод в жаве все равно не выполняется.
#301 #471089
>>471040
пост запрос с помощью плагина http requester для фф отправился и метод на сервере выполнился и ответ на запрос пришел.
#302 #471115
>>471044
Через resolve мне как раз контент и возвращается. Разве через него можно сделать скрол до элемента ? Он же вроде только данные подтянуть/вернуть может ?
#303 #471125
>>471065
Помести алерт в колбэк.
#304 #471127
>>471115
Залей куда-то хоть часть этого кода.
#305 #471128
>>470993
Может спринг отказывается обрабатывать запрос без какой-нибудь нагрузки? Нагрузи его каким-нибдуь huita=malafia
#306 #471131
>>470993
Добавь ещё error колбэк. Может он тебе ошибку возвращает, а ты её даже не видишь.
#307 #471140
>>471127
>>471115
Решил использовать $timeout, потому что и так слишком много времени убил на это. Спасибо за помощь.
Позже может запилю пример
#308 #471190
>>471084

>хабра


>адекваты


Тут-то я и проиграл.
#309 #471406
Ребят, тут могут пояснить как код работает?
Там немного, строк 40.
#310 #471434
>>471406
Главное не пиши код в посте
#311 #471437
>>471434
Окей, а где писать тогда?
#312 #471440
#313 #471442
>>471440
Вот
http://jsbin.com/gofuqoroda/1/edit?js,output

Очень хотелось бы понять, что там вообще происходит.
#314 #471445
>>471442
Очевидно что-то связанное с перемещением объекта, вижу функции jquery ui
#315 #471451
А как делать сценарии?
Например, чтобы один див появлялся после того, как, например, исчезнет другой див, который в свою очередь появится после того, как, например, в определенную область перетащат определенный объект?
#316 #471452
>>471451
События
#317 #471456
>>471442
Там есть кнопочка "Add library". Подключи Jquery UI. И стили для <div class="dropp/dragg"> добавь
#318 #471463
>>462898
Антуаны, стоит ли учить Метеор? Как он там?
#319 #471470
>>471451
на выбор: колбеки, промисы, события
#320 #471535
>>462898
Задолбался рыть гугл.
Есть один удаленный сервер, на странице которого записана строка. Как сделать GET запрос, чтобы достать эту строку?
Пробовал через ajax - соснул сервер постоянно выдает ошибку кроссдоменного доступа.
Сейчас пытаюсь открыть новое окно с нужным адресом и прочитать из него, не получается.
Неужели это нельзя сделать просто, без нагораживания PHP проксей на флеше?
#321 #471571
Кто-нибудь из вас читал спецификацию es6? Мне как-то лень. Неужели кто-то читает такую хуйню? Скучно ведь.
#322 #471590
>>471535
Сервер умеет в JSONP? Тогда используй его.
#323 #471621
>>471571
Я тоже был удивлен, когда узнал, что есть люди со сверхспособностью читать спецификации.
87 Кб, 605x607
#324 #471652
Ребята, почему each ниработаит? вроде он же должен видеть функцию addClass через замыкание? или я чтото не так понимаю.
34 Кб, 500x329
#325 #471654
>>471652
ой забыл кодярник https://jsfiddle.net/m6j0wjuu/
#326 #471662
>>471654
Начнём с того, что у тебя addClass сам проходится по всей коллекции и each тебе не нужен.
#327 #471665
>>471662
просто там будут ещё и другие функции, которые небудут "проходиться по коллекции", на addClass тестирую, потому как он уже реализован
#328 #471668
>>471665
Тогда твой код вызова должен выглядеть так:

$("selector").each(function () { this.addClass("newClass") })

Сейчас у тебя так не сработает по куче причин. Например, each пытается передать параметр param, но у него его нет. Во-вторых, addClass ожидает NodeList, а в моем он вызывается у единичной ноды.

Вот, я переписал так, что бы работало, но потер некоторые твои вещи. Думаю, будет не сложно восстановить.

https://jsfiddle.net/m6j0wjuu/1/
60 Кб, 807x454
#329 #471677
>>471668
бляяя. братан. спасибо. ты открыл мне глаза. пока не рассеялся эффект-я ныряю в свой код.
#330 #471688
>>471621
>>471571
https://github.com/lukehoban/es6features
Вот годная спецификация.
#331 #471696
>>471590
Не умеет похоже, и в веб-сокеты
sage #332 #471702
>>471688
Вот еще такой сайт есть http://es6-features.org/
52 Кб, 535x903
#333 #471791
Пацаны, но што за нах? ну почему блять не пашет? https://jsfiddle.net/5jcLbvob/
Ну должно ведь работать!
#334 #471794
>>471791
ведь должен же добавляться параграф. Где эта блядина? Почему не добавляется!?
#335 #471801
>>471791
appendChild принимает Node, а не строку

https://jsfiddle.net/us4cfu9v/
#336 #471804
>>471801
спасибо, братан
#337 #471805
>>471794
Ему дали инструменты для разработки, а он ими не пользуется. Если бы ты держал консоль открытой, то сразу же понял бы в чем проблема, аутист ты этакий.
#338 #471826
>>471805
как бы держал, но необходимых выводов сделать не смог. значит что-то делал не так, но думаю,когда-нить мутирую из аутиста в разраба. туго тока сука идёт :)
#339 #472098
ананасы, почему у меня меняется arguments?
https://jsfiddle.net/Lmd8510j/
Гляньте код, не откажите в любезности
3543 Кб, 215x292
#340 #472102
анпу наш годный тред нагой прелестницей
#341 #472133
>>472098
Что за наркоманский код? Чего ты хочешься добиться?

>Array.slice


Такого вообще нет, может Array.prototype.slice?
#342 #472153
>>472133
я хочу чтобы функция handlingArray () принимала массив аргументов любой другой функции и если среди этих аргументов есть массив, она его сглаживала. в итоге функция handlingArray () возвращает массив аргументов без массивов. как то так принимает: handlingArray(1,4 ,[4,6,8]) , возвращает: [1,4 ,4, 6, 8]
#343 #472222
>>472102
Ты из Сибири?
#344 #472230
>>472222
нет. а почему ты спрашваешь?
#345 #472237
>>472230
Тебя ебёт?
#346 #472275
>>472133
сорри кривая ссылка, как и мои руки, впрочем
вот верная http://jsfiddle.net/Lmd8510j/1/
76 Кб, 604x453
#347 #472276
>>472275
ребят, не стесняйтесь - загляните внутрь. для гуру js там всё очевидно
#348 #472280
аутист в треде.

Есть какой онлайн сервис для кода на жаваскрипт, чтобы несложно было разобраться полному ньюбу(для начального обучения по учебнику http://habrahabr.ru/post/240219/)

блин ну просто чтобы без палок в колеса console.log("Hello world") написать?
#349 #472288
>>472276
Тебе что-то такое надо? набыдлокодил на коленке и со вложенными массивами не работает

http://jsfiddle.net/9un79eve/
#350 #472294
>>472288
я хочу чтоб функция handlingArray() или flatten() как ты её назвал принимала ["Text", Array[2]] , а к ней приходит [Arguments[2]] http://jsfiddle.net/Lmd8510j/1/
#351 #472297
>>472280
jsfiddle.net или консолью браузера (F12) пользуйся. Загугли на ютубе уроки по яваскрипту от Sorax'а. Мне помогло. Я просто не совсем понимаю о чём ты спрашиваешь
#352 #472302
>>472294
Я хуй знает что тебе надо, но arguments это не array, а что-то похожее. А ["Text", Array[2]] и [Arguments[2]] это то, как соснулька их показывает их.
#354 #472312
>>472302
лан, братан, спасибо. буду как то переделывать всё чтоб такой вопрос не вставал
#355 #472336
>>472297
та я пользовался консолью, но больше банального консоль.лог ничего не смог
207 Кб, 980x400
#356 #472413
Реквестирую на следующий оп-пик коллаж на тему пикрелейтед, где ламп будет ебаться в жопу и сосать хуи.
#357 #472415
>>472413
Ты ебанутый?
#358 #472437
>>472413
зачем трупы насиловать
#359 #472470
Сосоны, я вот, делаю себе игоря, по типу "найди две одинаковые картинки".
Генератор рандома для них сделал. Пердолилку в блоки сделал.
Теперь мне надо сравнить два блока на наличие одной картинки.
Тип, если всё ок - блоки так и остаются открытыми, если не ок - закрываются.
И вот хуй знает как сделать это.

Я вообще, хотел через .click делать. Потом подумал, что кликать-то я буду по общему для всех классу - значит функция будет выполнятся одна для всех. А это как-то не так.
#360 #472481
>>472280
learn.javascript.ru
#361 #472482
Смотрите, какая красота http://porechny.ru/
Три вопроса по этому:
1) Как сделать, чтобы страница была во всю высоту окна?
2) Как сделать переключение элементов по скроллу или нажатии стрелок, да так, чтобы не просто переключалось, а по очереди?
3) Как сделать, чтобы текст мелькал разными символами в разном порядке?
#362 #472491
>>472482
НА самом деле - нихуя не красота.

По вопросам - гугли. Лично видел плагин, чтобы-тип прокрутка именно окон, а не по вертюжку. Вот только название забыл.
#363 #472500
>>472482

>рубипораша


>красота


Уходи.
#364 #472501
>>472294
Думаю сам поймешь что изменилось.
http://jsfiddle.net/Lmd8510j/4/
#365 #472502
>>472482
1) Гугли
2) Гугли
3) Гугли
Я помог?
57 Кб, 600x600
#366 #472503
>>472482
Рекламируешь себя, Димон?
#367 #472508
>>472413

> Linux против MongoDB


> MySQL против Angular


ясно
#368 #472522
>>472500

>рубипораша


Как ты узнал?
#369 #472588
дамы и господа, подскажите как можно "узнать" htmlString.
То есть я хочу чтобы, моя функция, получающая какую-то строку в качестве аргумента, на строку вида "<p>Some letters</p>" реагировала иначе чем на строку "Simple Stringle". Как отличить htmlString от простого string ?
3 Кб, 280x112
#370 #472607
>>472588
Можешь создать элемент, запихнуть в него свою строку и сравнить innerHtml с innerText.
#371 #472617
>>472607
спасибо. так и поступлю
#372 #472619
Ребят, а как можно два обьекта NodeList объеденить в один?
#373 #472635
>>472619
или такой вопрос как из массива можно сделать NodeList?
#375 #472682
>>472635
Расскажи, зачем такое может понадобиться?
#376 #472750
С чего начать изучение ангуляра? Сейчас копаюсь в их phonecat и читаю доки, но мутно очень, непонятно. Есть что-то для даунов? Выручайте, фронтендеры.
#377 #472765
>>472750
Я искал и пробовал разные туториалы и видео, так что ГУГЛИ.
#378 #472790
>>472750
Пройди для начала курсы по Angular на codeacademy и codewars
#379 #472791
>>472790
Блять, не codewars, а codeschool конечно же.
#380 #472826
<script src="../assets/libraries/node_modules/angular/angular.min.js"></script>
Почему это может на работать? Путь указан верно 100%. На сервер приходит "GET /assets/libraries/node_modules/angular/angular.min.js".
#381 #472858
>>472826
Может потому, что ты открыл сервер в этой папке, а папку уровнем выше он не видит? Бля, нельзя в нормальное место скрипты кидать? Или хотя бы bower использовать?
#382 #472882
>>462898
JS.anon, что почитать по Node.js?
Что нибудь от новичка к продвинутому прогеру.
#383 #472885
>>472882
node.js in action, node.js in practice
#384 #472886
>>472885
А на русском?
#385 #472889
>>472886
английский для начинающих
#386 #472893
>>472889
Хочется легкого чтения, а не гугления незнакомых слов
#387 #472896
Смотрите: альтернатива PHP - Node.js, альтернатива MySQL - MongoDB. А какие есть альтернативы Apache и nginx, связанные с JS? И чем можно заменить линукс системы?
#389 #472899
>>472896

> И чем можно заменить линукс системы?


Windows, конечно! Долбоёб, зачем его заменять?
#390 #472901
>>472898
Спасибо
#391 #472993
>>472882
на офф сайт для начала сходи
#392 #473011
Detached DOM - зашквар или нет?
#393 #473021
Ребзя, поясните, ЧЯДНТ.

http://pastebin.com/QTzSDWHZ
Вот код. В Хроме отрабатывает как и задуманно, в мозилле - ебанной эстафетчице ИЕ походу - хуй.

Если лень разбирать строчку за строчкой там написано: когда загрузится страница прицепи событие к body. Само событие: когда проскролится 55 пикселей - перекрась бекграунд или верни как было.
#394 #473025
>>473021
ну вставь там везде console.log да посмотри в чем будет отличие вывода в разных браузерах
242 Кб, 1133x603
#395 #473035
>>473025
Эм, а ff туда ничего не выводит, что странно. Вот пруф.
#396 #473038
>>473035
значит функция не вызывается
#397 #473049
>>473021
Вместо document.body.scrollTop в FF попробуй использовать
document.documentElement.scrollTop

т.е. вот так
var doc = document;
var scrollTop = doc.body.scrollTop || doc.documentElement.scrollTop

или вообще испольовать пока jQuery
#398 #473053
>>473049
>>473038
Кароче кароче ура кароче. На сайте где я дергал инфу как справочную (w3schools) написано, что onscroll можно припиздякать к body, но фактически он заработал только в хроме и то частично. Через addEventListener отвалился и от хрома. Если скроллить document, то и в ff, и в хроме все заибися. Вот так заработало

>document.addEventListener("scroll", function (e) {console.log(e);});

#399 #473054
>>473053
А не, нихуя в ff document.body.scrollTop хоть и есть, но всегда равен 0. Вот ша запилю по твоему >>473049. Спасибо, кстати.
24 Кб, 580x400
#400 #473219
мужики, а как вы относитесь к тому, что ваша нода чутли не самая медленная технология на рынке? разве только нищенка питон может потягаться в ущербности
#401 #473239
>>473219

> Spravkavaja


Отношусь к этому как к пиздежу
#402 #473245
#403 #473256
>>473219
Довольно странный кейс для тестирования веб-технологий. Измеряется больше скорость простейшего числодробления и вызова рекурсивной функции, чем обработки реальных запросов.
#404 #473317
>>473256
Есть предложения лучше?
#406 #473330
>>473317
Да как минимум гостевая страница с простейшим функионалом - и замерять скорость постинга коммента/получения всех комментов. Это уже будет напоминать типичную для веб-бэкенда задачу.
Хотя на производительность в принципе всем похуй в большинстве случаев - если по ней судить, то сервер на С или фортране - лучший бэкенд. Даже у самого тормозного говна скорости хватит на большинство случаев, а где не хватит - там уже относительно серьезный бизнес, который может себе позволить тупо закупить еще серверов.
#407 #473335
>>473329

>Ur


Ох ты ж блять. Вангую что местные хачкелисты скоро на новую тему для форсинга перейдут.
234 Кб, 869x1000
#408 #473340
>>473335
Есть один хачкелист в рунетике, который пишет стартуп с онлайновой платформой для рсс-аггрегации на ur/web и хаскиле. Вот он, скорее всего, посещает эту итб борду, но понятно, что если он начнёт кукарекать про юр, это сразу его сдеанонит, так как, похоже, он единственный человек на планете, который всерьёз пытается это использовать.
#409 #473353
>>473329
Измеряется больше скорость доступа к БД, чем обработки реальных запросов.

>>473330
Где эти комменты будут храниться? В каком виде? Получится текстодробилка, а не реальный запрос!

Кароч, в реальности бэкенд может заниматься чем угодно. Не вижу существенной разницы в том какие данные обрабатывать для бенчмарка.

По хорошему счету нужен набор самых разных бенчмарков.
44 Кб, 360x480
#410 #473354
>>473353
В глаза ебёшься? Там разные тестики есть:
https://www.techempower.com/benchmarks/#section=data-r10&hw=peak&test=json
#411 #473400
Привет, ребятки. Короче нужно на html5 видеоплеер повесить по даблклику фулскрин. Ну я его повесил.

function fullScreen() {
if (player.requestFullscreen) {
player.requestFullscreen();
} else if (player.msRequestFullscreen) {
player.msRequestFullscreen();
} else if (player.mozRequestFullScreen) {
player.mozRequestFullScreen();
} else if (player.webkitRequestFullscreen) {
player.webkitRequestFullscreen();
}
}

А как обратно? Как определить, что элемент в полноэкранном режиме, чтобы его вывести тоже по дабл-клику?
#412 #473405
Можно ли как то получать доступ к базе данных MySQL через чистый JS, без ноды?
#413 #473441
>>473405
К MySQL - нет, только через чье-нибудь API.
К встроенным в бровзере базам - да (IndexedDB)
#414 #473443
>>462898
Решил попробовать ваш JS, вашу Node и иже с ним.
Аноны подскажите, как установить NodeBB на сервер.
Есть сервер на nginx + varnish. Хочу туда поставить посмотреть NodeBB.

По инструкции на офф сайте всё установил, NodeBB запустил - запускается без ошибок. А как её в браузере то открыть? Там при команде nodebb setup - есть указание http://localhost:4597, но сервер то не на локалке у меня. Пробовал прописывать подомен, где его хочу потестировать - не открывается. Может нужно через nginx конфиг создавать и как-то прописывать там nodebb? Что-то я не вкурю нефига. Анон подскажи адепту.
#415 #473449
>>473443

>nginx + varnish


>NodeBB


/0
#416 #473462
>>473449
Хочу на этом сервере посмотреть. Нода чтоли не сможет мне нодебб показать?
#417 #473464
>>473449
Хочу на этом сервере посмотреть. Нода чтоли не сможет мне нодебб показать?
#418 #473519
>>473462
>>473464
Guide installation.
#419 #473641
>>473519
Нагуглил. Переосмыслил подход, поправил, заработало.

А теперь вопрос. Я совсем буду долбанутый, если у меня node будет работать в связке с nginx + varnish? Или всё таки варнишь будет быстрее выдавать закешированные странички и меньше нагрузка на ноду? Ей ведь и так дофига запросов(ну, в теории) от зареганных обрабатывать нужно будет. Или это будет давать некоторые тормоза только? Ведь там nodebb работает на redis.

Если убрать nginx + varnish - по скорости изменится что-то? Или будет хуже? Или лучше? Поясните мне плиз.
#420 #473727
здравствуйте. Я, Кирилл.
хочу чтобы вы сделали сниппет на джейкуэри или пиэйчпи суть такова.
пользователь может заходить на страницу со смартфонов, пк и планшетов. и если пользователь заходит со смартфонов, определенные ссылки меняют href. можно переходить по ссылкам...

короче, как в jquery сделать проверку на ширину экрана? чтоб если ширина меньше определенной, то срабатывало условие? $(window).width вроде только получает текущую ширину, а мне нужно как в css @media max-width. в условии есть еще одна проверка, так что всё это нужно втиснуть в jquery.
#421 #473754
Сап мозги нужна помощ. Как с помощью AJAXа вывести содержимое скрипта в div элемент с заменой текущего контента в нем без перезагрузки текущей страницы?
Заранее сори за нубский вопрос
#422 #473758
>>473727
Медиазапросами показываешь элементы для телефона, планшета и десктопа. Потом на жс определяешь какой виден и в зависимости от того какой выполняешь что тебе надо
#423 #473763
>>473727
$(document).width
#424 #473870
Как с помощью node.js сделать консольную утилиту ? Что бы её можно было запускать не через "node index.js", а просто "tool"
#426 #473876
>>473874
Спасибо, то что нужно.
#427 #473879
>>473870
в package.json пропиши "bin": { "tool": "index.js" } а потом установи сам пакет. можешь еще ман покурить - npm help json
#428 #473881
>>473879
Спасибо. Нашёл еще такую статью:
http://javascriptplayground.com/blog/2015/03/node-command-line-tool/
Может кому-то тоже пригодится. Для разбора аргументов взял commander
#429 #473888
>>473870
Кто о чем, пердолик о соснолях.
#430 #473922
На чём написан JS? Плюсы или жава?
#432 #474061
>>473922
На лиспе
#433 #474100
>>474061 Может на твой мамаше-шлюхе?
#434 #474249
хули для простых вещей в программировании придумывают сложные имена? охуели? замыкание, бля. ща въебу за такие слова. колбэки. бля, да за такой базар ебло надо разбивать.
#435 #474273
>>473922
Оригинальный, написанный Айком (SpiderMonkey), был на C. В браузерах FireFox, Chrome и Internet Explorer интерпретаторы JavaScript написаны на C++. В современной Java тоже есть интерпретатор JavaScript (раньше был Rhino, теперь Nashorn), который можно использовать для скриптов в Java-приложениях.
#436 #474274
>>474061
Не совсем так, язык JavaScript создавался на основе Java и Scheme (один из диалектов Лиспа).
#437 #474275
>>473754
Гугли jQuery, $.ajax(...) отправляет на сервер AJAX-запрос и возвращает результат (если не было ошибки - в функции success). Затем просто заменяешь в любом элементе HTML-код: $("#myElemId").html(newcode);
#438 #474276
>>473727
screen.width
#439 #474602
>>474274
Во-первых, ты забыл упомянуть Smalltalk.
Во-вторых, анон спрашивал, на чем он написан, а не что повлияло на его создание.
#440 #474606
>>474602

> Smalltalk


Self
быстрофикс
#441 #474715
Пытаюсь погроммировать на ПХП яваскрипт вообще не знаю, захотел добавить на один сайт что то подобное. Скачал видеоплейер написанный на яваскрипт, подключил, норм работает, но как сделать что бы при нажатии на кнопку плей переключалось другое видео? Надо искать что то в коде самого видеопроигрывателя но я не разбираюсь, может кто то что то подскажет?
#442 #474738
Привет, анон. Есть один вопрос:
Даны два блока, в одном лежат draggable элементы, другой — sortable, принимающий в себя эти элементы. Один из элементов сам является sortable и должен принимать в себя другие. Но! Так происходит ровно до того момента, пока не перетащить его. После перетаскивания перестаёт работать как контейнер. Перетаскивание дублирует элемент, handler: 'clone'. Все это на jqueryui.
Подскажи, анончик, в чем бида.
#443 #474758
>>474738
Накидал побыстрому, что было понятно?
http://jsbin.com/wofedosuge/1/edit?html,js,output

Нужно что бы красный элемент тоже был контейнером и мог принимать в себя элементы.
#444 #474787
Ребят, есть один код, который достается из базы данных. В этом коде много лишних <tr> и <td>. Как с помощью js пройтись по коду и удалить всё лишнее уже на самой странице?
55 Кб, 279x201
#445 #474793
Поставил себе амбициозную задачу: спарсить все сообщения определённого диалога ВКонтакте. Сразу оговорюсь в следствие чего встала такая задача: планирую угнать (фишинг) логин:пароль одного аккаунта ибо нужна переписка двух юзеров. Переписка длинная (приблизительно несколько десятков тысяч сообщений + фото), поэтому просто сесть прочесть всю переписку не вариант, т.к. опасаюсь, что пароль быстро сменят, поэтому решил скопировать куда-нибудь на внешний носитель. Опыта в программировании пока что мало, поэтому я нуждаюсь в вашей помощи.

Итак, что удалось выяснить:
Блок сообщений представляет собой таблицу, имеющую id, который генерируется как "im_log%id юзера, с которым ведётся диалог%", class="im_log_t".
Каждое сообщение является строкой tr /tr таблицы и имеет id вида "mess%порядковый номер, идущий по порядку, но начинается не с 1%". Как генерируется пока не понял, да и думаю это не существенно. Гораздо важнее, что все входящии имеются class="im_in", а исходящие класс "im_out". По этим классам, судя по всему, и придётся парсить. Тащемта, нам требуется спарсить содержимое строк этой таблицы. Вот я и хочу у вас узнать как это сделать, т.е. получить содержимое всех этих тегов.
Далее: т.к. переписка очень большая, то сообщения изначально сообщения видны не все, а подгружаются по мере прокрутки истории сообщений вверх, и даже если кликнуть "Показать всю историю сообщений", то вконтакт всё равно подгрузит не все сообщения (не станет же он подгружать все десятки тысяч сообщений). Поэтому тут мне тоже очень нужен ваш совет как решить эту проблему.

Также мне нужно понять куда и как можно сохранить весь этот массив текста. Возможно ли кроссдоменным запросом отправить всё это на сторонний сервер и записать там в файл/БД и как это сделать.

Запустить скрипт, я так понимаю, можно просто вставив текст скрипта в консоль при открытой странице с сообщениями.

В общем, это пока что все мысли, которые есть. Буду рад любым внятным советам и ссылкам на статьи и литературу (только не очень объёмную).
55 Кб, 279x201
#445 #474793
Поставил себе амбициозную задачу: спарсить все сообщения определённого диалога ВКонтакте. Сразу оговорюсь в следствие чего встала такая задача: планирую угнать (фишинг) логин:пароль одного аккаунта ибо нужна переписка двух юзеров. Переписка длинная (приблизительно несколько десятков тысяч сообщений + фото), поэтому просто сесть прочесть всю переписку не вариант, т.к. опасаюсь, что пароль быстро сменят, поэтому решил скопировать куда-нибудь на внешний носитель. Опыта в программировании пока что мало, поэтому я нуждаюсь в вашей помощи.

Итак, что удалось выяснить:
Блок сообщений представляет собой таблицу, имеющую id, который генерируется как "im_log%id юзера, с которым ведётся диалог%", class="im_log_t".
Каждое сообщение является строкой tr /tr таблицы и имеет id вида "mess%порядковый номер, идущий по порядку, но начинается не с 1%". Как генерируется пока не понял, да и думаю это не существенно. Гораздо важнее, что все входящии имеются class="im_in", а исходящие класс "im_out". По этим классам, судя по всему, и придётся парсить. Тащемта, нам требуется спарсить содержимое строк этой таблицы. Вот я и хочу у вас узнать как это сделать, т.е. получить содержимое всех этих тегов.
Далее: т.к. переписка очень большая, то сообщения изначально сообщения видны не все, а подгружаются по мере прокрутки истории сообщений вверх, и даже если кликнуть "Показать всю историю сообщений", то вконтакт всё равно подгрузит не все сообщения (не станет же он подгружать все десятки тысяч сообщений). Поэтому тут мне тоже очень нужен ваш совет как решить эту проблему.

Также мне нужно понять куда и как можно сохранить весь этот массив текста. Возможно ли кроссдоменным запросом отправить всё это на сторонний сервер и записать там в файл/БД и как это сделать.

Запустить скрипт, я так понимаю, можно просто вставив текст скрипта в консоль при открытой странице с сообщениями.

В общем, это пока что все мысли, которые есть. Буду рад любым внятным советам и ссылкам на статьи и литературу (только не очень объёмную).
55 Кб, 1052x259
sage #446 #474795
В тред врывается мудак с охуительными историями. Короче, есть поле для прикрепления файла, оно сделано прозрачным и спрятано в контейнер (div), чтобы выглядело нормально и чтоб не сильно ебаться с CSS. Пикрелейтед.
Так вот. При клике по контейнеру событие передается полю для прикрепления файла, все работает. Но хочу еще тащи-роняй (drag and drop) прикрутить. Собственно, как проксировать события типа dragenter, drop и что там еще из контейнера в поле? Чет нихуя не получается. ondrop="proxyEvent(event);" с последующим input.dispatchEvent(event); не фурычет. Текст ошики: InvalidStateError: An attempt was made to use an object that is not, or is no longer, usable.
#448 #474800
>>474787
Гугли "регулярные выражения".
#449 #474801
>>474800
Иначе никак?
sage #450 #474802
>>474787
[code lang="js"]
s = s.split("<td>").join("").split("<tr>").join("");
[/code]
#451 #474804
>>474797
Вот здесь как раз я не знаю как делать. Допустим я в консоли хочу использовать метод messages.getById и тупо вывести его алертом. Что в консоли нужно писать?
#452 #474806
>>474804
А, вроде допёр. Но нужен токен даже уже для авторизованного пользователя. Его можно как-то узнать или можно получить только авторизовавшись в ВК?
sage #453 #474808
>>474804
Ты почитай документацию то. Примеры посмотри.
[code lang="js"]
var options = {
message_ids: [/ид сообщений/]
};
VK.Api.call("messages.getById", options, function(response) {
response = response.response;
if (!response)
return;
response.items.forEach(function(msg) {
console.log(msg.body);
});
});
[/code]
sage #454 #474810
>>474806
Ты заебал. Читай документацию.
https://vk.com/dev/openapi
#455 #474811
>>474802
Dzęki
#456 #474819
>>474810
Бля, там нужна авторизация приложения для получения акцесс токена. Это ведь можно всё спарсить и без этого геморроя.
sage #457 #474820
>>474819
Без аккаунта вк - никак. А если у тебя есть аккаунт вк - то в чем проблема?
#458 #474824
>>474820
Ну да, есть. Свой же acces_token для запуска кода я и хочу и, вроде как, могу использовать для запроса. Судя по сурс-коду переменная vc_h как раз и содержит значение токена?
sage #459 #474829
>>474824
Там все проще делается, хуячишь вот так:
[code lang="js"]
VK.init({
apiId: 4867924
});
VK.Auth.login(function(response) {
if (response.session) {
//OK
} else {
//FAIL
}
});
[/code]
И типа все. Оно само откроет окошко с запросом авторизации. Там только еще в запросе надо будет указать, какие действия можно будет делать, оно при подтверждении их перечислит.
sage #460 #474830
>>474829
ID на свой меняешь, разумеется.
sage #461 #474831
>>474830
И да, это ID приложения, не пользователя.
#462 #474835
>>474831
Так в том-то и дело, что у меня нет никакого приложения. Это просто код, запущенный в консоли.
sage #463 #474847
>>474835
Тогда вроде вообще никак. Зачем тебе эта ебля, просто создай в блокноте простейшую HTML страницу с нужным скриптом и не извращайся.
#464 #474863
>>474847
И как мне его на вконтактовской странице тогда запустить?
Чувак, еще раз: нужно спарсить все сообщения из диалога ВК и куда-нить пока не придумал как их записать. Код для парсинга буду запускать из консоли. Нах мне какой-то файлик создавать-то?
#465 #474873
А теперь еще один вопрос. Вы уж простите, но я в скрипты вообще не могу, а задание есть.
Я принимаю в <div> код из БД с большим кол-вом лишних <tr> и <td>
Как мне вообще сделать так, чтобы этот код фильтровался от лишнего автоматически? Что нужно будет прописать в самом <div>?
А то я только функцию onClick знаю.
Простите за тупые вопросы. ._.
#466 #474890
>>474715
Пытаюсь погроммировать на ПХП яваскрипт вообще не знаю, захотел добавить на один сайт что то подобное http://neave.tv. Скачал какой-то видеоплейер написанный на яваскрипт, подключил, норм работает, но как сделать что бы при нажатии на кнопку плей переключалось другое видео? Надо искать что то в коде самого видеопроигрывателя но я не разбираюсь, может кто то что то подскажет?
#467 #474905
>>474873
Что значит "лишних", блядь? Что значит автоматически? Я блядь откуда знаю, какие у тебя лишние, а какие нет? Ты алгоритм можешь сформулировать?
sage #468 #474908
>>474863
Ну ебись со своим парсингом хтмл, раз не хочешь все быстро и просто сделать.
#469 #474915
>>474793
http://vkopt.net/
Анус себе спарси.
sage #470 #474925
>>474795
Бамп, сучечки.
#471 #474931
>>474925

Ты мне нравишься, поэтому отвечу: ничего проксировать не надо, драг-унд-дроп файла можно отловить на любом элементе: http://www.html5rocks.com/en/tutorials/file/dndfiles/#toc-selecting-files-dnd .
#472 #474935
>>474905
Зачем ты такой злой?
Мне просто нужно чтобы всё, что попадает в див, проходило через определенную регулярку, ну.
sage #473 #474939
>>474931
Ты не понял. Мне надо, чтобы событие произошло именно на файловом input-е, тогда будет такой же эффект, как если бы пользователь щелкнул по инпуту, выбрал файл и нажал ОК (то есть файл будет выбран в инпуте и отправится на сервер при submit'е формы). Не хочется городить дополнительных условий и проверок, нет ли файлов, добавленных drag and drop'ом и запихивать их в запрос отдельно.
#474 #474953
>>474793
Переписку ЕОТ с Ерохиным утащить хочешь?
#475 #474969
#476 #474975
>>474873

>я в скрипты вообще не могу, а задание есть.


Попроси погромистов которые делают бэкенд убрать теги. Есть и другие способы, но для этого тебе нужно хоть немного мочь в погромирование.
#477 #474979
>>474975
Ну я в пхп могу неплохо. Но сделать это надо на js. Просто скажи как это можно сделать, а я уже что-то попытаюсь сообразить. Иначе никак. Такие-то дела у меня.
#478 #474993
>>474979
Если данные отдаются в json'е, то прям на входе и обрабатываешь. Если данные отдаются прямо в шаблон и на этапе принятия их обработать нельзя – присвой нужному диву id и замени содержимое.

<div id="foo">
<tr>azaza</tr>
</div>
<script>
document.getElementById('foo').innerHTML = document.getElementById('foo').innerHTML.replace(/<(?:.|\n)*?>/gm, '')
</script>

Хотя это, конечно, костыли. Если tr'ы не нужны, то нужно пройтись по базе и разом их все выпилить.
#479 #474999
>>474975

>document.getElementById('foo').innerHTML = document.getElementById('foo').innerHTML.replace


Охуенно! Теперь я знаю как это делается, спасибо большое, анон :з
111 Кб, 1920x1080
#480 #475001
>>474758
Бамп вопросу
#481 #475098
>>474915
Спасибо.
#482 #475101
>>475001
А потом она этими руками еду готовит на кухне.
sage #483 #475113
>>475101
Как что-то плохое. Я бы облизал.
29 Кб, 391x210
#485 #475276
#487 #475342
Заметил, что крайне редко довожу js приложения до логического конца. Из примерно 20 в разное время начатых проектов лишь 2 дотянул до релиза и примерно половину довёл до альфаверсии (работало, но с багами).

Так вот статистика утилит на c# совершенно иная. Лишь один проект из десятка я забросил.

Собственно, моё ворчание не всё, зачем я пишу, а всего лишь ищу ответ на вопрос, почему так и как повысить процент успешных проектов на js (писать на Dart?)?
#488 #475345
>>475342
Сам заметил 2 вещи, которые объективно хуже, чем в C#, первое это отсутствие IDE, кроме VS. Все эти блокнотики, саблаймы, брекеты, вебматриксы и джетбрейны мало того что глючат (учитывая куцый функционал), так ещё и не могут в нормальный дебагинг.

Может не знаю, есть какая-то IDE, которая будет показывать ошибки до интерпретации, ходя бы подчёркивать их.
#489 #475347
>>475345
Второй недостаток я решил фабричными функциями, а вот с выбором IDE до сих пор напряг.
#490 #475350
>>475347
Тебе NetBeans / Eclipse / IDEA религия использовать не позволяет, что ли?
#491 #475352
>>475345

>Может не знаю, есть какая-то IDE, которая будет показывать ошибки до интерпретации, ходя бы подчёркивать их.



Даже обосаный eclipse это умеет.
sage #492 #475365

>сделали язык с динамическим петушением


>жалуются на невозможность выявления ошибок до интерпретации


>пишут костыли для выявления ошибок до интерпретации


Вся суть веб-даунят.
#493 #475370
Есть один ползунок выбора диапазона, типа такого.
www.xiper.net/examples/js-plugins/ui/ui-slider/
Есть определенная выборка товаров.
Как мне сделать так, чтобы при выборе определенного ценового диапазона все товары, не попадающие в него, не отображались, но вместе с тем сделать это без обновления страницы, а, так сказать, на лету - поставил на ползунке минимальную цену в 100 и все, что стоит меньше 100 сразу прекратило отображаться.
sage #494 #475371
>>475370
style.display = "none";
#495 #475373
>>475371
if(price < получаемое_на_первом_ползунке_значение) {
style.display = "none";
}
else if(price < получаемое_на_втором_ползунке_значение) {
style.display = "none";
}
так?
sage #496 #475377
>>475373
Да, только во втором случае >.
#497 #475378
>>475377
По невнимательности проебал, спасибо.
#498 #475423
Аноны, есть один код. Тапками не кидайтесь - он маленький.

$('#test').someshit(function () {\t
\tvar value = $(this).data('value');;
\tvar mini = $("#minCost").val();
\tvar maxi = $("#maxCost").val();
\talert(maxi);
\tif (value < mini) {
\t\t$('#test').css('display', 'none');
\t}
\telse if (value > maxi) {
\t\t$('#test').css('display', 'none');
\t}
});

Почему он отказывается работать?
Все инпуты есть, дивы тоже.
#499 #475455
>>475423
Лол
503 Кб, 707x1000
sage #500 #475464
>>474939
>>474795
>>475334
Ну хули вы, епта, ну.
#501 #475468
>>475423
$("#minCost").val() = 37 // не работает
$("#minCost").val(37) // работает
Намёк понятен?
#502 #475476
#503 #476357
http://pastebin.com/QJgxwhZZ

PHP генерирует таблицу расписания, которую можно тут же и редактировать: кликаешь на ячейку - она преобразуется в textarea, содержащую значение ячейки, потом ну еще не реализовал многое это всё можно сохранить отправив ajax'ом на сервер. Вопрос: почему при изменении значения ячейки и переходе к клике по другой ячейке значение отредактированной ячейки не сохраняется? ЧЯДНТ?
#504 #476830
Меня из пхп-треда отправили к вам.
Вопрос:
Есть веб-страница. На ней кнопка "показать надпись". Нажимаем кнопку - в нужном месте страницы появляется текст. Без перезагрузки страницы. Это аяксом делается? Или яваскриптом? Или всё же можно реализовать голым пхп? Как?
#505 #477090
Анон, ситуация следующая. Есть функция для перемножения матриц (читай - двумерных массивов), и есть три матрицы, которые надо перемножить в ряд. Когда я вызываю функцию умножения с двумя первыми матрицами, все нормально. Когда я вызываю ее во второй раз (с получившейся в результате первого вызова матрицей и третьей матрицей), она считает правильно все числа, кроме двух. Как быть с этим?
Что это вообще?
#506 #477099
>>476830
Нахуя тебе ПХП, если ты таких вещей не понимаешь ?
Какой текст ? Если грузится с сервера - аяксом, если он уже на странице есть, но скрыт или берется откуда-то со страницы, то обычным JS. Можно и на ПХП, если совсем извращенец.
#507 #477102
>>477099
Вру, если без перезагрузки, то одним PHP не обойтись
#508 #477244
>>477099

>Нахуя тебе ПХП, если ты таких вещей не понимаешь ?


Сделать задание от препода и забыть, как страшный сон. Программирование - не мой профиль.
>>477102

В итоге нашёл разные варианты с использованием жаба-скрипта:
1) document.write("<a href='http://www.google.ru'>Google - ничего и не терялось!</a>");
2) document.getElementById("heretext").innerHTML="Текст, текст, текст!";
Либо на чистом пхп
<?php
function function_echo(){
echo "Hello!";
}
if($_POST){
function_echo();
}
?>
<form method="post">
<input type="submit" name="create" value="1.php-button">
</form>
279 Кб, 1405x695
#509 #477246
#510 #478178
Анон, а есть вообще способ писать скрипты (ну и проводить отладку, разумеется) на телефоне?
Тред утонул или удален.
Это копия, сохраненная 5 июня 2015 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски