我在javascript函数中有一行,它根据另一个字符串数组的顺序对一个对象数组进行排序.这是在Firefox中工作但不在IE中,我不知道为什么.这是我的数据在IE7中进入排序调用的样子.(我正在使用三个项目的数组来说明这一点).
//cherry first then the rest in alphabetical order
originalData = ['cherry','apple','banana','clementine','nectarine','plum']
//data before sorting - note how clementine is second item - we wan to to to be after apple and banana
csub = [
{"value":"cherry","data":["cherry"],"result":"cherry"},
{"value":"clementine","data":["clementine"],"result":"clementine"},
{"value":"apple","data":["apple"],"result":"apple"},
{"value":"banana","data":["banana"],"result":"banana"},
{"value":"nectarine","data":["nectarine"],"result":"nectarine"},
{"value":"plum","data":["plum"],"result":"plum"}
]
//after sorting, csub has been rearranged but still isn't right: clementine is before banana. in FF it's in the right place.
csubSorted = [
{"value":"cherry","data":["cherry"],"result":"cherry"},
{"value":"apple","data":["apple"],"result":"apple"},
{"value":"clementine","data":["clementine"],"result":"clementine"},
{"value":"banana","data":["banana"],"result":"banana"},
{"value":"nectarine","data":["nectarine"],"result":"nectarine"},
{"value":"plum","data":["plum"],"result":"plum"}
]
Run Code Online (Sandbox Code Playgroud)
这是实际的排序代码:
csubSorted = csub.sort(function(a,b){ return (originalData.indexOf(a.value) …
Run Code Online (Sandbox Code Playgroud) 问题的简短版本:见标题
问题的长版:我在代码中广泛使用了jquery的show()和hide()函数,只是遇到了一些问题:它们分别通过将元素的display属性更改为'block'或'none'来工作,如果你有一些显示内容:内联然后隐藏并显示它,你已经将它的显示更改为阻止,这在几种情况下搞砸了布局.
在我的代码中,每当我想要隐藏某些东西时,我会给它一个"隐藏"的类.这个类只是{display:none}.我希望更改显示并隐藏以删除或添加此类,而不是直接更改显示属性,这样如果您添加隐藏类然后再次删除它(即隐藏并显示某些内容),那么它又回到了如何它是从一开始就开始的(因为添加一个类会覆盖属性而不是直接更改它们).像这样的东西(这是一个小小的pseucodey,因为我不知道如何正确设置功能 - 让我们假设'this'是显示/隐藏被调用的对象)
function show(){
this.removeClass("hidden");
}
function hide(){
this.addClass("hidden");
}
Run Code Online (Sandbox Code Playgroud)
如何以及在哪里重写jquery方法?(我不是javascript专家)
谢谢 - 最大
我正在生产模式和登台模式下运行我的rails应用程序在同一台服务器上,在不同的文件夹中.他们都使用memcache-client,需要运行memcached.
到目前为止,我还没有设置部署脚本,因此只需通过sshing到服务器,进入相应的目录,更新代码,重新启动memcached,然后重新启动unicorn(实际运行rails应用程序的进程)来手动部署.我重新启动了memcached:
sudo /etc/init.d/memcached restart &
Run Code Online (Sandbox Code Playgroud)
这会启动一个新的memcached,但它不会杀死旧的:检查出来:
ip-<an-ip>:test.millionaire[subjects]$ ps afx | grep memcache
11176 pts/2 S+ 0:00 | \_ grep --color=auto memcache
10939 pts/3 R 8:13 \_ sudo /etc/init.d/memcached restart
7453 ? Sl 0:00 /usr/bin/memcached -m 64 -p 11211 -u nobody -l 127.0.0.1
ip-<an-ip>:test.millionaire[subjects]$ sudo /etc/init.d/memcached restart &
[1] 11187
ip-<an-ip>:test.millionaire[subjects]$ ps afx | grep memcache
11187 pts/2 T 0:00 | \_ sudo /etc/init.d/memcached restart
11199 pts/2 S+ 0:00 | \_ grep --color=auto memcache
10939 pts/3 R 8:36 \_ sudo …
Run Code Online (Sandbox Code Playgroud) 我有这个文件夹
public/assets/dvd_files/dvds/
Run Code Online (Sandbox Code Playgroud)
我想svn忽略可能出现在其中的任何东西.我认为这样可行:
svn propset svn:ignore * public/assets/dvd_files/dvds/
Run Code Online (Sandbox Code Playgroud)
但我收到此错误消息:
svn: Cannot set 'svn:ignore' on a file ('Capfile')
Run Code Online (Sandbox Code Playgroud)
谁能让我直截了当地说我在这里做错了什么?干杯,最大
我有这个字符串
string = "<p>para1</p><p>para2</p><p>para3</p>"
Run Code Online (Sandbox Code Playgroud)
我想分开para2文本,以便我得到这个
["<p>para1</p>", "<p>para3</p>"]
Run Code Online (Sandbox Code Playgroud)
问题是有时para2可能没有包装在p标签中(并且p外部和内部可能有可选空格).我以为这样做会:
string.split(/\s*(<p>)?\s*para2\s*(<\/p>)?\s*/)
Run Code Online (Sandbox Code Playgroud)
但是,我明白了:
["<p>para1</p>", "<p>", "</p>", "<p>para3</p>"]
Run Code Online (Sandbox Code Playgroud)
它不会将开始和结束p标记拉入匹配模式 - 它们应该作为拆分的一部分被删除.默认情况下Ruby的正则表达式是贪婪的,所以我认为它们会被拉入.而且,如果我做一个gsub而不是分裂,这似乎得到了证实:
string.gsub(/\s*(<p>)?\s*para2\s*(<\/p>)?\s*/, "XXX")
=> "<p>para1</p>XXX<p>para3</p>"
Run Code Online (Sandbox Code Playgroud)
他们是拉进和摆脱了这里,但不是在分裂.任何人的想法?
谢谢,最大
我在CSV文件中以此行为例:
2412,21,"Which of the following is not found in all cells?","Curriculum","Life and Living Processes, Life Processes",,,1,0,"endofline"
Run Code Online (Sandbox Code Playgroud)
我想把它拆分成一个数组.直接的想法只是在逗号上分开,但是其中一些字符串中有逗号,例如"生命和生活过程,生命过程",这些应该作为数组中的单个元素保留.还要注意,两个逗号之间没有任何内容 - 我希望将它们作为空字符串.
换句话说,我想得到的数组是
[2412,21,"Which of the following is not found in all cells?","Curriculum","Life and Living Processes, Life Processes","","",1,0,"endofline"]
Run Code Online (Sandbox Code Playgroud)
我可以想到涉及eval的hacky方式,但我希望有人能想出一个干净的正则表达式来做...
干杯,最大
我正在开发一个通过一个安静的xml界面与iphone应用程序通信的rails应用程序.自从他发送各种媒体以来,iphone应用程序开发人员想要抓住他的请求.我认为heroku会自动处理gzipped请求(http://adam.heroku.com/past/2009/4/22/gzip_makes_a_happy_web/),但它似乎没有:我得到一堆乱码的文本,通过它我不知道该怎么处理.
我需要设置我的heroku应用程序来处理这个设置吗?或者一个特定的标题他(iphone dev)需要发送他的请求告诉heroku如何处理它?
有点卡住,任何建议赞赏!谢谢,最大
在我们的应用程序中,我们将传递png图像以及~200个字符的字节数组.我想用对应于该bytearray的文件名保存图像,但不是字节数组本身,因为我不想要200个字符的文件名.所以,我认为我会将bytearray保存到数据库中,然后MD5将其保存为短文件名.当需要显示特定图像时,我查找其bytearray,MD5,然后查找该文件.
到现在为止还挺好.问题是潜在的两个不同的bytearray可能会向下散列到同一个MD5.然后,一个文件将有效地覆盖另一个文件.或者他们可以吗?我想我的问题是
我有一个git repo,我只想下载某些子文件夹.我的配置如下所示:
#.git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
sparsecheckout = true
[remote "dreamhost"]
url = <repo url>
fetch = +refs/heads/*:refs/remotes/dreamhost/*
[push]
default = tracking
Run Code Online (Sandbox Code Playgroud)
在.git/info/sparse-checkout
我有这个:
themes/theme1
themes/theme8
Run Code Online (Sandbox Code Playgroud)
这是themes
我想要的子文件夹中的文件夹.(我不需要其他人,其中很多).
如果我做一个git/pull我可以看到git获取很多东西,包括themes
我不想要的子文件夹,这很好.我知道稀疏结账仍然会拉下物体.
我现在想要一份副本themes/theme15
,进行一些修改.所以,我.git/info/sparse-checkout
这样编辑:
themes/theme1
themes/theme8
themes/theme15
Run Code Online (Sandbox Code Playgroud)
然后做了一个git pull dreamhost master
,认为git会添加theme15文件夹themes
.但是,没有任何反应 - 它只是说
From <repo url>
* branch master -> FETCH_HEAD
Already up-to-date.
Run Code Online (Sandbox Code Playgroud)
和文件夹不在那里.谁能告诉我我做错了什么?编辑后还有一个额外的步骤.git/info/sparse-checkout
吗?
谢谢,马克斯
编辑:这是git version 2.8.1
顺便说一句
我想用 ruby 编写一个方法来替换当前仅返回哈希值的方法。
所以目前我们有这个
def some_stats
{
:foo => "bar",
:zoo => "zar"
}
end
Run Code Online (Sandbox Code Playgroud)
可以这样调用:
some_stats[:foo]
Run Code Online (Sandbox Code Playgroud)
我想用一个用 :foo 调用的方法来替换它,它会做一些更复杂的事情,只是构建一个哈希。但是,我希望以相同的方式调用它,并使用方括号表示法。例如
#this is a bit pseudo-cody but hopefully you get the idea.
def some_stats[](key)
if key.to_s =~ /something/
#do something
return something
else
#do something else
return something_else
end
end
Run Code Online (Sandbox Code Playgroud)
这仍然会被称为some_stats[:foo]
我无法计算出定义方法名称的语法:上面的方法def some_stats[](key)
不起作用。我觉得这应该是可能的。