我正在研究一个jQuery插件,但是在使我的变量适当缩放时遇到了一些麻烦.这是我的代码中的一个例子:
(function($) {
$.fn.ksana = function(userOptions) {
var o = $.extend({}, $.fn.ksana.defaultOptions, userOptions);
return this.each(function() {
alert(rotate()); // o is not defined
});
};
function rotate() {
return Math.round(o.negRot + (Math.random() * (o.posRot - o.negRot)));
};
$.fn.ksana.defaultOptions = {
negRot: -20,
posRot: 20
};
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
我试图让私有函数旋转以便能够看到o变量,但它只是保持警告'o未定义'.我不确定我做错了什么.
我正试图让我的第一个Sinatra应用程序开始,但我从Passenger获得了一个错误页面:
undefined method `application' for Sinatra:Module
Run Code Online (Sandbox Code Playgroud)
这是我的Rackup文件:
require 'rubygems'
require 'sinatra'
set :env, :production
disable :run
require 'app'
run Sinatra.application
Run Code Online (Sandbox Code Playgroud)
和应用程序本身:
#!/usr/bin/env ruby
require 'rubygems'
require 'sinatra'
require 'haml'
get '/' do
haml :index
end
get '/hello/:name' do |name|
@name = name
haml :hello
end
get '/goodbye/:name' do |name|
haml :goodbye, :locals => {:name => name}
end
__END__
@@layout
%html
%head
%title hello.dev
%body
=yield
@@index
#header
%h1 hello.dev
#content
%p
This is a test...
@@hello
%h1= "Hello #{@name}!"
@@goodbye …Run Code Online (Sandbox Code Playgroud)