• AngularJS SPA и Symfony2, подводные камни?

    @ElianL
    javascript-разработчик
    Если хотите делать связку PhoneGap + AngularJS, то посмотрите лучше в сторону ionic

    Так же если это проект в учебных целях, то может вам лучше глянуть в сторону Angular2 ?
    Ответ написан
    2 комментария
  • AngularJS SPA и Symfony2, подводные камни?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Сразу ознакомьтесь: https://github.com/johnpapa/angular-styleguide

    Как писать REST Api - решать вам. Если посложнее и для самообучения - посмотрите в сторону драфта стандарта jsonapi.org

    По поводу модулей - лично мне не нравится ни ngResource и restangular (хотя этот сносно использовать). Для простых приложений подойдет любой вариант, мне же нравится моя обертка над $http. Но если обертки нет - лучше взять готовое решение. Для ваших задач подойдет любой вариант.

    По поводу services/factories - рекомендую писать приложение сразу на ES6, тогда можно будет писать нормальные сервисы. По сути различие между services и factories - в первый передается функция-конструктор, во втором - функция-фабрика. при использовании ES6 классов сервисы писать намного удобнее.

    Как проектировать приложение - тут сходу сложно будет. Тут стоит много чего почитать и не только по ангуляру или symfony. По Symfony к примеру подойдут следующие штуки: https://github.com/phptodayorg/php-must-watch
    Ответ написан
    2 комментария
  • MouseWheel ScrollTo, или как с помощью колесика мыши перепрыгивать на нужный анкор?

    Liatano
    @Liatano
    Например,можно запретить выполнение Вашего скрипта,пока нижний край экрана не достигнет конца слайда(или offset().Top следующего),т.е.
    function getWinHeight(){//получаем высоту экрана
    	if($(window).height()<document.body.clientHeight) winHeight=$(window).height();
    	else winHeight=document.body.clientHeight;
    }
    getWinHeight();
    window.onresize = function(){/*ON RESIZE*/
    	getWinHeight()
    }
    var curElemID=0;
    var scrollTop=0;
    $(document).on('mousewheel DOMMouseScroll', function(event) {
    	var scroll=$(window).scrollTop();
    	var delta=((scrollTop-scroll)>0)?true:false;
    	scrollTop=scroll;
    	if(((winHeight+scrollTop) > a[curElemID+1].offsetTop) && delta){
    		//движемся вниз,не достигли конца слайда
    		return;
    	}else{
    			event.preventDefault();
    			if(delay) return;
    
    			/*--/ваш код/---*/
    			
    			$('html,body').animate({
    				scrollTop: a[i].offsetTop
    			});
    			curElemID=i;
    	}
    });//
    Ответ написан
    5 комментариев