Tag: javascript

getElementById和jquery $(’#smth’)之间的差异

经典Javascript代码之间有什么区别: document.getElementById(‘theID’) 和jQuery版本: $(‘#theID’)

如何计算JSON数组元素的长度

我正在尝试计算JSON数组元素的长度。 我知道使用json.array.length来计算数组的长度。 这需要找到每个索引中有多少项。 如果我的数组是: {“shareInfo”:[{“id”:”1″,”a”:”sss”,”b”:”sss”,”question”:”whi?”}, {“id”:”2″,”a”:”sss”,”b”:”sss”,”question”:”whi?”}, {“id”:”3″,”a”:”sss”,”b”:”sss”,”question”:”whi?”}, {“id”:”4″,”a”:”sss”,”b”:”sss”,”question”:”whi?”}]} 然后我需要找到{“id”:”1″,”a”:”sss”,”b”:”sss”,”question”:”whi?”}的长度{“id”:”1″,”a”:”sss”,”b”:”sss”,”question”:”whi?”} 。 在这有四个项目。 我用data.shareInfo[i].length尝试了这个。 但它会产生错误。 请有人告诉我如何找到长度….谢谢……

将Javascript数组转换为分隔的String

我有一个Javascript字符串数组,其值如A12,B50,C105等,我想把它变成一个管道分隔的字符串,如下所示:A12 | B50 | C105 … 我怎么能这样做? 我正在使用jQuery(如果有助于某种内置函数)。

检查给定的DOM元素是否准备就绪

有没有办法检查给定选择器/元素的HTML DOM元素是否已准备好使用jQuery或JavaScript? 查看jQuery api的ready函数,看起来它只能与文档对象一起使用。 如果准备好不能用于此目的还有另一种方法吗? 例如 $(‘h1’).ready(function() { //do something when all h1 elements are ready }); 显然我可以使用 $(document).ready(function() { //do something when all h1 elements are ready }); 但是如果首先加载所有h1,那么特定于h1元素的代码将仅在整个文档准备好之后执行,即使它实际上可以更早地执行。

jQuery切换在一定数量的匹配元素之后显示/隐藏元素

在实施分面搜索时,如果选项数量为7或更少,我将全部显示。 如果选项数超过7,我将仅显示前5个,并插入一个链接以切换这些选项的显示。 在这种情况下我的问题是,如何运行匹配元素列表,在这种情况下, li属于.facet ul ,并执行此function。 其次,我需要.appendTo()在.facet ul的末尾显示基于我是否显示全部或部分文本的文本。 如果显示全部,我希望文本显示为“……更少的选择”。 如果我显示的很少,我希望文本中写着“…更多选择”。 为这些function中的每个function推进正确的方向,或者非常感谢完整的解释。 以下代码供参考。 Brands Really long brand name facet to show what happens with multi-line facets (63) Joe Rocket (57) Icon (42) Fieldsheer (37) Tour Master (21) AGV Sport(21) Alpinestars(21) Cortech(21) Element(21) Fieldsheer(21) Firstgear(21) FMF Apparel(21) Icon(21) Joe Rocket(21) O’Neal Racing(21) Power Trip(21) REV’IT!(21) River Road(21) […]

jQuery .trigger()多个事件

我正在编写一个jQuery插件,并使用.on和.trigger作为我的pub / sub系统。 但是,我想在不同的场景中触发多个事件。 这可以作为一个字符串,如.on方法吗? 目标: $this.trigger(“success next etc”); // doesn’t work 当前解决方案 $this .trigger(“success”) .trigger(“next”) .trigger(“etc”); // works, triggers all three events 有什么建议?

jQGrid,如何在网格中添加新行,而不是通过模态?

一些快速搜索只会通过带有可编辑字段的模态弹出窗口向jQGrid添加新行。 任何人都可以指向我的示例或向我展示一些代码,允许您在网格顶部添加一个新的空行吗? 我在网格的最右端有一个动作列,其中onRowSelect()我有一个保存按钮,我可以让该按钮执行保存并刷新网格我认为.. 我无法弄清楚如何点击“添加行”按钮并在顶部的网格中添加一个空行。 我可以看到的一个选项是将当前添加行模式设置为看起来像水平行,并将其显示为网格顶部的一行。 jQGrid文档: http : //www.trirand.com/jqgridwiki/

通过twitter api 1.1获取公共推文,通过客户端代码(js)

我正在开发一个基本的个人主页,包含一个单独的html文档,一个.css和jquery * .js文件。 我想通过从推文中获取页面内容来创建博客。 标准小部件不适合页面的外观。 我可以通过API v1从没有身份validation垃圾的任何帐户中获取公共推文(因为它无论如何都是公共数据)。 但是对于API v1.1,它会返回身份validation错误。 它希望我进行身份validation以获取公共数据。 尝试浏览此url。 它显示({“errors”:[{“message”:”Bad Authentication data”,”code”:215}]}); 。 我的问题是有没有办法通过客户端js获取公共推文 ? 我不想创建一个只获取公共数据的应用程序。 我不想使用identi.ca或者其他,但Twitter推动我做。 在Zachary Kinebel对Norguard的回答发表评论后,我认为,作为Norguard的评论可能对其他人有帮助,我应该把它放在这里: /search.json?q=from:nerdswguitars === NerdsWGuitars /search.json?q=to:nerdswguitars最近的推文===最近的推文给NerdsWGuitars /search.json?q=from:nerdswguitars或者to:nerdswguitars == =两者。 /search.json?q=@nerdswguitars ===涉及NerdsWGuitars的post。 /search.json?q=#nerdswithguitars ===发布趋势“nerdswithguitars”。 但是你必须确保你正确地对查询进行URL编码。 在这里阅读更多内容: https : //dev.twitter.com/docs/using-search如果您无法找到您正在寻找的内容,那么您需要更加具体

如何使用Backbone.Marionette处理嵌套的CompositeView?

我正在使用Backbone进入更大规模的数据结构,并遇到通过CompositeViews很好地表示数据的场合; 也就是说,CollectionViews在它们周围增加了“添加绒毛”,例如标题,按钮等。 但是,我在将CompositeViews嵌套在一起时遇到了很多困难。 使用CompositeView上的标准itemView属性来渲染另一个CompositeView似乎根本没有触发。 假设我有一个父ItemView ,如此实例化(遵循Derick Bailey的例子 ;假设这个顶级是调用集合上的初始fetch()的地方): var User = Backbone.Model.extend({}); var UserCollection = Backbone.Collection.extend({ model: User }); var userList = new UserCollection(userData); var schedulerCompositeView = new SchedulerCompositeView({ collection: userList }); schedulerCompositeView.render(); this.ui.schedulerWidget.html(schedulerCompositeView.el); 而SchedulerCompositeView看起来像这样: return Backbone.Marionette.CompositeView.extend({ template: Handlebars.compile(schedulerCompositeViewTemplate), itemView: SchedulerDetailCompositeView, appendHtml: function (collectionView, itemView) { collectionView.$(“#schedulerGroups”).append(itemView.el); } }); 最后, SchedulerDetailCompositeView : return Backbone.Marionette.CompositeView.extend({ template: […]

是否可以更改函数参数的值?

我有一个带有两个参数的函数,例如function (a,b) 。 我想在函数中,取b的值,并用c替换它。 我在考虑像$(b).replaceWith(c)这样的东西,但它没有成功。 我知道我可以使用新值在函数内创建一个新变量,但是可以更改b本身的值吗? 这样的事情是可能的。 或者参数设置在石头上? 让我试着解释一下我想做什么。 有三个函数,一个是总体函数,然后是两个函数,由toggle事件触发。 我希望第二个函数做一些事情来获取值并将其传递给第三个函数。 所以这里是代码 function(a,b){ $(‘selector’).toggle( //I want this to gather a value and store it in a variable function(){}, //and I want this to accept the variable and value from the previous function function(){} )} 我能想到的唯一方法是为总体函数添加一个参数c,然后用第一个函数修改它,并将新值传递给第二个函数。