summaryrefslogtreecommitdiff
path: root/studio-susie/public/assets/js/lib/nav
diff options
context:
space:
mode:
Diffstat (limited to 'studio-susie/public/assets/js/lib/nav')
-rw-r--r--studio-susie/public/assets/js/lib/nav/DesktopNav.js43
-rw-r--r--studio-susie/public/assets/js/lib/nav/MobileNav.js32
2 files changed, 75 insertions, 0 deletions
diff --git a/studio-susie/public/assets/js/lib/nav/DesktopNav.js b/studio-susie/public/assets/js/lib/nav/DesktopNav.js
new file mode 100644
index 0000000..5d00c23
--- /dev/null
+++ b/studio-susie/public/assets/js/lib/nav/DesktopNav.js
@@ -0,0 +1,43 @@
+var NavView = View.extend({
+
+ el: "#mobile-nav",
+
+ events: {
+ "click .pages a": "go",
+ },
+
+ initialize: function(){
+ },
+
+ home: function(){
+ app.router.go("/")
+ this.$headings.find(".active").removeClass("active")
+ if (app.mobile_nav && app.mobile_nav.state.open) {
+ app.mobile_nav.hamburger()
+ }
+ },
+
+ go: function(e){
+ e.preventDefault()
+ var href = $(e.currentTarget).attr("href")
+ app.router.go(href)
+ console.log(href)
+ if (is_mobile) {
+ app.mobile_nav.hamburger()
+ }
+ this.after_go()
+ },
+
+ after_go: function(){
+ },
+
+ setActive: function(id){
+ var href = '/' + id
+ var $el = $('[href="' + href + '"]')
+ this.$('.active').removeClass('active')
+ if ($el.length) {
+ $el.addClass('active')
+ }
+ },
+
+});
diff --git a/studio-susie/public/assets/js/lib/nav/MobileNav.js b/studio-susie/public/assets/js/lib/nav/MobileNav.js
new file mode 100644
index 0000000..5c0f253
--- /dev/null
+++ b/studio-susie/public/assets/js/lib/nav/MobileNav.js
@@ -0,0 +1,32 @@
+var MobileNav = View.extend({
+
+ el: '#mobile_nav',
+
+ events: {
+ 'touchstart .logo': 'home',
+ 'touchstart .hamburger': 'hamburger'
+ },
+
+ initialize: function(options){
+ options = options || {}
+ this.state = {
+ open: false
+ }
+ },
+
+ home: function (){
+ app.nav.home()
+ },
+
+ hamburger: function (e){
+ $('html').toggleClass('navopen')
+ app.mobile_nav.state.open = ! app.mobile_nav.state.open
+ if (app.mobile_nav.state.open) {
+ $("#rapper").on("click", app.mobile_nav.hamburger)
+ }
+ else {
+ $("#rapper").off("click", app.mobile_nav.hamburger)
+ }
+ },
+
+})