小编Joh*_*hir的帖子

将html加载到页面元素(chrome扩展名)

我正在尝试编写Chrome扩展程序,在某些网页的顶部会有一个栏.如果我有这样的内容脚本:

$('body').prepend('<div id="topbar"><h1>test</h1></div>');
Run Code Online (Sandbox Code Playgroud)

一切看起来都不错,但我最终想要的是这样的:

$('body').prepend('<div id="topbar"></div>');
$('#topbar').load('topbar.html');
Run Code Online (Sandbox Code Playgroud)

topbar.html是:

<h1>test</h1>
Run Code Online (Sandbox Code Playgroud)

但是当我改变它时,网页被破坏了.大多数内容都消失了,我最终看到了一些广告.我甚至看不到'测试'标题.我已经检查过以确保页面上没有其他"topbar"ID.怎么了?

javascript jquery dom google-chrome-extension

22
推荐指数
3
解决办法
2万
查看次数

jQuery在点击内覆盖.click事件

我有这些功能:

TargetWorksheet.toggle_child_locations = function(id){
  $("#location-children-"+id).slideToggle("slow"); 
}

TargetWorksheet.get_child_locations = function(id, lvl){
  //Ajax grab all children and targets, and display children
  $.get('child_locations',{ location_id: id, level: lvl}, function(data){
    $("#location-children-"+id).append(data);
    TargetWorksheet.toggle_child_locations(id);
  });

  //Change onClick to just toggle since child data will now be loaded
  $("#location-toggle-"+id).click(function(){
    TargetWorksheet.toggle_child_locations(id);
  });
}
Run Code Online (Sandbox Code Playgroud)

这个电话:

$(function(){
  TargetWorksheet.toggle_child_locations(2);
  $("#location-toggle-2").click(function(){
    TargetWorksheet.get_child_locations(2,1);
  });
});
Run Code Online (Sandbox Code Playgroud)

所以我将点击事件附加到我的"+"链接(#location-toggle-2),该链接切换子数据.在第一次单击时,我想进行ajax调用以检索子数据,但是我只想覆盖#location-toggle-2上的.click,以便它现在只是切换,并且不会进行ajax调用.上面的代码不起作用,它似乎没有覆盖.click,并且每次都进行ajax调用.

有谁知道如何覆盖项目的.click事件?我也尝试 $("#location-toggle-"+id).click(TargetWorksheet.toggle_child_locations(id)); 过,由于某种原因,它一直在递归地翻转.

思考?

jquery

21
推荐指数
1
解决办法
3万
查看次数

删除或覆盖由超类或mixin添加的ActiveRecord验证

我在我的Rails应用程序中使用Clearance进行身份验证.该Clearance::User混入增加了一些验证的到我的User模型,但有这些,我想删除或覆盖一个.这样做的最佳方式是什么?

有问题的验证是

validates_uniqueness_of :email, :case_sensitive => false
Run Code Online (Sandbox Code Playgroud)

这本身并不坏,但我需要补充一下:scope => :account_id.问题是如果我将它添加到我的User模型中

validates_uniqueness_of :email, :scope => :account_id
Run Code Online (Sandbox Code Playgroud)

我得到了两个验证,而且Clearance添加的一个比我的更严格,所以我没有效果.我需要确保只有我的运行.我该怎么做呢?

ruby validation ruby-on-rails clearance

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

Heroku雪松堆栈中机架缓存与清漆的缺点?

之前的2个Heroku应用程序堆栈带有一个Varnish层,它根据http头自动反向代理缓存内容.

新的Heroku雪松堆没有这个Varnish层.Heroku建议使用rack-cachememcache.

与以前使用清漆层的堆叠相比,这是否有缺点?使用机架缓存,服务缓存层的服务器是否更少,并且以不太优化的方式?

heroku varnish rack-cache

21
推荐指数
2
解决办法
6029
查看次数

如何使用Rails路由从一个域重定向到另一个域?

我的应用程序曾经在foo.tld上运行,但现在它在bar.tld上运行.请求仍然会出现在foo.tld中,我想将它们重定向到bar.tld.

如何在rails路由中执行此操作?

routing ruby-on-rails rails-routing

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

如何在Postgres的表中为每条记录生成唯一的字符串?

假设我有一个像帖子一样的表,它有典型的列,如id,body,created_at.我希望通过创建每个帖子生成一个唯一的字符串,用于类似url shortener的东西.也许是一个10个字符的字母数字字符串.它必须在表中是唯一的,就像主键一样.

理想情况下,Postgres有办法处理这两个问题:

  1. 生成字符串
  2. 确保其独特性

而且它们必须齐头并进,因为我的目标是不必担心我的应用程序中的任何唯一性强制代码.

postgresql

20
推荐指数
5
解决办法
2万
查看次数

什么是Rails/Devise会话中的监听数据?

Rails会话中的"数据"如下所示:

{"warden.user.user.key" => [[1], "long-random-string"]}
Run Code Online (Sandbox Code Playgroud)

1是用户ID.什么是长随机字符串?

这是由Rails或Devise处理/使用的东西吗?

ruby-on-rails devise warden

20
推荐指数
1
解决办法
6003
查看次数

Vagrant:如何将文件夹从访客同步回主机?

为什么,因为很难通过来宾中的遗留编辑器来处理和编辑代码.流浪者的整个目的是为开发人员更容易,对吧:)?

因此,我请有人在这种情况下指导我:

  • 需要在项目上工作.这是git repo.需要mysql,php等等.
  • VM工作得很好(提供)
  • 但是通过ssh和"遗留"编辑器编辑此repo中的文件并不那么容易.想要使用最喜欢的IDE.

在VM repo上/home/vagrant/src.我希望它../src在主机中可见/可编辑.

我阅读了文档并在Vagranfile中推出了这个文档:

config.vm.synced_folder '../src', '/home/vagrant/src'

这个"作品",除了它会覆盖所有的内容从/home/vagrant/src与那些从../src里面是空的.

任何解决方法?我考虑过通过git克隆repo的可能性(通过github公开获得)并将文件夹同步到VM,但这感觉不对,也失去了生产配置.

virtualbox vagrant

20
推荐指数
4
解决办法
6993
查看次数

使用Ruby 1.9.3时"证书验证失败"OpenSSL错误

我在Mac OS 10.6.8上使用Ruby 1.9.3p0(使用rvm安装).当我尝试使用GitHub上托管应用程序模板创建一个新的Rails应用程序时,使用它(例如):

$ rails new myapp -m https://github.com/RailsApps/rails3-application-templates/raw/master/rails3-mongoid-devise-template.rb -T -O

我收到此错误消息:

/Users/me/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/net/http.rb:799:in `connect': SSL_connect 
returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed 
(OpenSSL::SSL::SSLError)

据我所知,Ruby语言解释器使用OpenSSL连接到GitHub来请求应用程序模板文件.GitHub要求使用SSL进行所有连接.连接失败,因为OpenSSL无法验证服务器证书.

我可以通过下载证书文件来解决问题:

$ cd /opt/local/etc/openssl
$ sudo curl -O http://curl.haxx.se/ca/cacert.pem
$ sudo mv cacert.pem cert.pem

使用Ruby 1.9.2我没有问题.为什么我得到Ruby 1.9.3的"证书验证失败"问题?这是一个Ruby 1.9.3错误吗?它是否特定于Mac OS 10.6.8?我的解决方案是解决这个问题的正确方法吗?

ruby openssl ruby-on-rails rvm ruby-on-rails-3.1

18
推荐指数
3
解决办法
3万
查看次数

执行rake db时出错:在Heroku上进行迁移

什么时候做

heroku run rake db:migrate

执行所有迁移然后,最后我总是得到以下消息:

/app/vendor/bundle/ruby/1.9.1/bin/rake: No such file or directory - pg_dump -i -s -x -O -f /app/db/structure.sql dan79p98fykovu

我无法在Heroku上将pg_dump添加到PATH.怎么处理这个?

ruby rake heroku database-migration

18
推荐指数
1
解决办法
3102
查看次数