问题标签 [jquery-bbq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 我今天应该使用哪个 JavaScript hashchange/history 库(2011 年)?
1) 我的 JavaScript 应用程序应该使用哪个 JavaScript hashchange/history library/method?
2)我如何使用该方法实现这三件事?
A)当页面加载时,我想解析 url 哈希/参数并设置初始应用程序状态。
具体来说,我的应用程序包含一个 Backbone 集合,其中包含两个模型,这些模型具有 selectedCountry、selectedYear 等属性。
(我认为我不能使用 Backbone.Router,因为这是一个非常定制的具有复杂状态的可视化应用程序?)
B)我想设置一个 hashchange 监听器或类似的监听器,让我相应地更新应用程序状态
C)在主干集合更改事件上,我想更新 url。重要提示:我想在执行此操作时暂时删除 hashchange 侦听器,以便没有反馈循环。
注意:该应用程序已经依赖于一些 HTML5 技术,因此该解决方案不必与旧版浏览器兼容……但是“反馈循环”部分很重要,因为我之前一直在努力解决这个问题……
谢谢 :)
javascript - 在 $(document).ready 期间无法更改在 $(document).ready 期间添加的元素
我已经实现了一个页面,其中包含一个选项列表(工作类别),单击时应该显示数据(工作描述)。我正在使用烧烤来处理后堆栈。
一切都很好,除了在用户第一次导航到页面时设置初始选择。我的代码被调用到addClass('selected')
正确的元素,但就像代码运行时该元素实际上不可用。
请注意,我添加了一个调试调用$('#category' + C).append('bite me');
来向自己证明这不是样式表/CSS 的问题。
这是我的代码:
第一次 through historyCallback
,直接调用 from $(document).ready
,C
是未定义的,因此else
执行的语句$.bbq.pushState({ category: 3 },2);
将 #has 设置category=3
为我的默认类别。
这会导致historyCallback
再次调用,这次使用C == 3
. 子句末尾的三行if
无效:
请注意,当我单击一个类别时,这些行会按预期工作。
似乎在此代码运行时,jQuery/DOM/whatever#category
中创建的锚点loadCategories()
尚不可用。
我需要某种延迟或什么吗?我错过了什么?
万分感谢。
jquery - 使用 jQuery BBQ 插件时,有没有办法让 getState() 方法忽略大小写?
我正在使用 jQuery BBQ 插件: http ://benalman.com/projects/jquery-bbq-plugin/
它非常棒,但是当调用$.bbq.getState();
案例似乎很重要时。
例如,考虑以下 URL http://mysite.com/#someVar=someValue
:.
如果我调用$.bbq.getState('someVar');
,我可以检索查询字符串变量的值,但如果我调用$.bbq.getState('somevar');
(使用小写 v),则值为undefined
.
我可以使用一个常量值来构建 URL,该常量值总是以正确的大小写,但我正在考虑用户可能键入 URL 的场景。如果他们键入错误的大小写,该$.bbq.getState()
方法会告诉我“someVar”值不是 URL 的一部分。
所以我想知道......有没有办法告诉$.bbq.getState()
不区分大小写?
jquery - bbq removestate 不影响
如何删除状态片段搜索?
状态:#tab=2&search=true
如果我取消注释 removeState 行,它将首先创建一个由 tab=2 组成的新状态,将其替换为新状态 tab1。如何在 1 个新状态下删除搜索片段并将 tab=2 替换为 tab=1?
javascript - 如何使用多个哈希?
目前,我使用 Ben 的 Alman jquery-hashchange 插件在哈希中使用页码:
现在我需要再添加一个值 - filter
. 我认为结果哈希 URL 看起来像
如何解析?即如何理解 ifpage
已定义, iffilter
已定义(以及值是什么 -和1
-我分别需要它们)?1
0
我在考虑 Ben 的 Alman BBQ 插件,但是(1)对于这样简单的任务来说它看起来太复杂了,(2)不确定如何使用没有值的参数(page1、page2 等)。
jquery - 如何在 jQuery BBQ 插件中使用没有值的参数?
我需要定义和读取哈希值,例如
即页码将是参数的一部分并且没有价值。如何使用(获取和设置)这些参数?
jquery - jQuery BBQ-Plugin 是否仍在使用 JQuery 1.7x?
简短的问题,但在任何地方都找不到提示:似乎jQuery BBQ插件在 v1.4.2 之前仅经过测试才能与 jQuery 一起使用。现在 jQuery 的当前版本是 v1.7.1,我想知道插件是否仍然有效?
以前没有使用过它,只是想避免浪费时间无望地让它工作......
jquery - jQuery 同位素组合过滤器与烧烤哈希历史混合 - 需要帮助了解如何
我试图了解如何将组合过滤器与Jquery BBQ Hash History一起使用。
我想做的是让用户按徽标、身份或品牌过滤。如果用户单击徽标,我希望他们能够通过“非营利、教育、零售”等进行子过滤。我知道组合过滤器可以在没有实现 jquery BBQ 代码的情况下正常工作,但我想两者都做。
jquery - 使用JQuery BBQ时有没有办法实现正常的锚功能?
就是这样-或者,是否有另一种足够简单的方法可以在一个 div/etc 中加载内容而无需重新加载另一个?并带有返回、书签和锚点功能?
谢谢
插件:或者 - 是否有另一种方法可以使用一些 jquery/javascript 巫术“滚动到一个点”?以便我可以使用 JQuery BBQ 和 jquery/javascript 滚动?
我只需要完成这件事。
javascript - 为什么包含prototype.js会破坏jquery bbq的功能?
我有:
现在,问题是 Regular-Visitors-&-Ops.html 页面无法加载,但它正在加载!所以我修改了我的撤消,直到我发现不包括prototype.js 让该链接通过jquery bbq 的方式工作。
是什么赋予了?如何让prototype.js 和jquery bbq 共存?我需要两者来做不同的事情..
要启动并运行它,您需要在同一目录中添加一个额外的 Regular-Visitors-&-Ops.html 文件,例如:
以及jquery,jquery bbq的两个脚本(我自己命名的),&prototype.js。
现在,如果您确实进行了设置 - 外卖原型和 Regular-Visitors(...) 链接有效。问题是,我正在使用prototype.js。所以要么我如何让这两个工作,或者更容易,我如何实现一个scrollTo函数(不能使用锚,因为jquery bbq占用了锚/散列(例如“#welcome”在“index.html#欢迎”)不使用 PROTOTYPE.JS?应该有一个吧?