Zurb Foundation + Jade + Express Uncaught Type Error没有方法'基础'

时间:2013-08-15 18:58:25

标签: node.js express zurb-foundation

我在Zurb的基金会使用Express和Jade。

这是我第一次遇到这个问题而且我被困住了。

我一直收到这个错误。

  

未捕获的TypeError:对象[object Object]没有方法'foundation'

我打赌我通过使用Jade来放弃这一点,但如果我,我迷失了。以下是代码的内容:

!!! 5
//if lt IE 7
    html.no-js.ie6.oldie(lang='en')
//if IE 7
    html.no-js.ie7.oldie(lang='en')
//if IE 8
    html.no-js.ie8.oldie(lang='en')
//[if gt IE 8]><!
html.no-js(lang='en')
  //<![end if]
  head
    meta(charset='utf-8')
    meta(http-equiv='X-UA-Compatible', content='IE=edge,chrome=1')
    title=title
    meta(name="description", content=description)
    meta(name="author", content=author)
    meta(name="viewport", content='width=device-width, initial-scale=1')

    link(rel="stylesheet", href="/stylesheets/foundation.min.css")

    script(src="/javascripts/vendor/custom.modernizr.js")
    script(src="https://cdn.firebase.com/v0/firebase.js")
    script(src='//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js')

  body 
    .row
      block content

    // Foundation Footer tools 
    script.
     document.write('<script src=' +
      ('__proto__' in {} ? 'javascripts/vendor/zepto' : 'javascripts/vendor/jquery') +
      '.js><\\/script>')


    script(defer, src='/javascripts/foundation.min.js')
    script.
      $(document).foundation();

    block scripts

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

jQuery实例未正确加载。您没有正确制作网址,因为您错过了 HTTP 前缀。

script(src='//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js')

Foundation Footer工具也尝试加载jQuery,但它似乎失败了,因为你正在使用相对路径。您应该在javascripts网址前面附加一个“ / ”:

script.
     document.write('<script src=' +
      ('__proto__' in {} ? '/javascripts/vendor/zepto' : '/javascripts/vendor/jquery') +
      '.js><\\/script>')

我还建议在头部附近移动这个声明。正确加载jQuery会让你摆脱错误。

此致