小编Pat*_*rik的帖子

仅使用浏览器按钮进行Onhashchange

我有这个问题(我使用的是jQuery,但我并不局限于此):

我正在使用Anchor导航(#id)和Ajax请求的组合.为了使页面移动到位(使用锚导航)或获取信息(使用Ajax),我使用onhashchange事件.

编辑:我有一个小错字.我忘了检查mouseDown标志是否为true并且是否触发了hashchange事件,所以我添加了if语句.

使用jQuery它看起来像这样:(当然这个代码包含在一个函数中并在DOM加载时初始化但是对于这个问题并不重要)


$(window).bind('hashchange', function(e) { }
Run Code Online (Sandbox Code Playgroud)

为了确保只有支持onhashchange的浏览器读取代码,我将其封装为:


if ('onhashchange' in window) {
  $(window).bind('hashchange', function(e) { }
}
Run Code Online (Sandbox Code Playgroud)

我的网络应用程序是这样制作的,我只想在浏览器中点击后退/前进按钮时触发onhashchange事件.要做到这一点,我喜欢这样:


if ('onhashchange' in window) {
  $(window).bind('mousedown hashchange', function(e) { }
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我在视口中单击,我将触发mousedown事件.如果mousedown事件被触发,我知道我没有单击浏览器后退/前进按钮,我可以使用这样的标志停止onhashchange事件:


var mouseDown = false;

if ('onhashchange' in window) {
  $(window).bind('mousedown hashchange', function(e) {
    if (e.type === 'mousedown') {
      mouseDown = true;
    }

    if (mouseDown && e.type === 'hashchange') {
      // if the mousedown event was triggered and when the haschange event triggers,
      // we need to stop …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery hashchange

6
推荐指数
1
解决办法
3593
查看次数

指南针和SASS:没有编译错误

我现在已经厌倦了这个问题.我被推迟了很多次试图让这一切顺利.我觉得这是我解决问题的最后一次尝试.开始:

我安装罗盘

sudo gem update --system
sudo gem install compass
Run Code Online (Sandbox Code Playgroud)

我创建了我的测试项目(名为test)

compass create test
Run Code Online (Sandbox Code Playgroud)

这就产生了这个

directory test/ 
directory test/sass/ 
directory test/stylesheets/ 
   create test/config.rb 
   create test/sass/screen.scss 
   create test/sass/print.scss 
   create test/sass/ie.scss 
Run Code Online (Sandbox Code Playgroud)

我尝试编译项目

compass compile [path/to/test]
Run Code Online (Sandbox Code Playgroud)

我得到的只是这个错误消息:"无需编译.如果您正在尝试启动一个新项目,那么您已经离开了目录参数."

我试着谷歌问题,但我找不到任何帮助我.这里的任何人都知道发生了什么事吗?我错过了重要的事情吗?

我正在运行OSX 10.6.8

sass compass-sass

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

ajax ×1

compass-sass ×1

hashchange ×1

javascript ×1

jquery ×1

sass ×1