или берешь готовые решения, или сам реализовываешь, все очень просто. но это настолько типичная и рутинная задача, что обязательно начни пользоваться каким-нибудь фреймворком, сам недавно писал все руками, пока в один прекрасный момент не зае.....
https://jsfiddle.net/a0qqbzf3/42/