小编Tre*_*ham的帖子

渲染流星模板后运行JS

我有一个看起来像这样的模板:

<template name="foo">
  <textarea name="text">{{contents}}</textarea>
</template>
Run Code Online (Sandbox Code Playgroud)

我渲染它:

Template.foo = function() {
  return Foos.find();
}
Run Code Online (Sandbox Code Playgroud)

我有一些事件处理程序:

Template.foo.events = {
  'blur textarea': blurHandler
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是设置取决于其内容大小的rows属性textarea.我意识到我可以写一个Handlebars帮助器,但它不能访问正在渲染的DOM元素,这会迫使我做一些不必要的重复.理想情况下,我想要的是流星在渲染元素后触发事件.就像是:

Template.foo.events = {
  'render textarea': sizeTextarea
}
Run Code Online (Sandbox Code Playgroud)

这可能吗?

meteor

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

覆盖浏览器"查找"功能

我想知道是否可以使用JavaScript拦截或阻止用户使用浏览器的"查找"功能在页面上查找文本.(相信我,我有充分的理由!)我猜测答案是"不",超出明显的拦截Cmd/Ctrl + F.

第二个最佳解决方案是拦截突出显示浏览器在查找期间执行的文本.有没有办法在任何浏览器中执行此操作?

javascript browser find

8
推荐指数
1
解决办法
1095
查看次数

Firefox和WebKit之间的文本输入元素的高度不一致

好吧,我意识到这是一个永恒的问题,但是这里有:

我有一个文字输入,

<input type="text" name="whatever" />
Run Code Online (Sandbox Code Playgroud)

我已经指定了它font-family,font-size并且padding.然而,即使在同一台机器上(我的Mac,让我们说),Firefox(3.6)中的输入高度与Chrome或Safari中的高度不同.具体来说,Firefox在文本下方添加了一些填充.

不,height以像素为单位指定也不会达到一致性.

有没有办法在不使用JavaScript的情况下实现基于Gecko和WebKit的浏览器(更不用说IE和Opera)的文本输入高度一致性?如果我必须使用JavaScript,有人已经设计了一个jQuery插件或其他东西来轻松做到这一点?

更新:这是不该做的事情.该jqTransform插件可以让你的皮肤表单元素,并承诺他们将看起来是一样的跨浏览器.以下是我的Mac上Chrome 5中演示输入的外观:

jqTransform Chrome输入

以下是Firefox 3.6.4中相同输入的外观:

jqTransform Firefox输入

我没有以任何方式更改这些屏幕截图,只是裁剪它们.现在,我的第一反应是,"呃,我不想支持Firefox." 但目前Firefox用户数量远远超过Safari和Chrome用户,因此这不是一个选择.

有人,请帮忙!我只是希望我的表单在现代的,符合标准的浏览器中看起来一样!而且"看起来一样",我不是在谈论outline选择或类似的东西; 我只是在谈论相同的宽度,高度和文字位置!

css firefox webkit

8
推荐指数
1
解决办法
8594
查看次数

如何通过JavaScript判断浏览器是否在触摸屏设备上?

我知道这是一个长期存在的问题,但是请注意:我想知道我的网站访问的设备是否是触摸屏.这意味着手机和iPad当然可以单独检测,而且其他触摸屏可能正在运行Windows的风格.有没有机会确定那些鼠标的存在与否?

假设我愿意使用像Modernizr这样的大型JavaScript库.这有帮助吗?

javascript accessibility touchscreen mobile-website

8
推荐指数
1
解决办法
308
查看次数

如何替换Backbone.Collection中的模型?

假设我有Backbone.Collection三个型号.我想替换中间的一个,将第一个和第三个模型保持在当前位置.(假设没有comparator.)我该怎么做?

backbone.js

8
推荐指数
2
解决办法
8453
查看次数

将console.log分配给另一个对象(Webkit问题)

我想让我的日志记录语句尽可能短,同时防止控制台在不存在时被访问; 我提出了以下解决方案:

var _ = {};
if (console) {
    _.log = console.debug;
} else {
    _.log = function() { }
}
Run Code Online (Sandbox Code Playgroud)

对我来说,这似乎很优雅,它在Firefox 3.6中运行良好(包括保留console.debug比这更有用的行号console.log).但它在Safari 4中不起作用.[更新:或在Chrome中.所以问题似乎是Firebug和Webkit控制台之间的区别.]如果我按照上面的说法进行操作

console.debug('A')
_.log('B');
Run Code Online (Sandbox Code Playgroud)

第一个语句在两个浏览器中都能正常工作,但第二个语句在Safari中生成"TypeError:Type Error".这只是Firebug和Safari Web开发人员工具如何实现控制台之间的区别吗?如果是这样,Apple的 Webkit 就非常烦人了.将控制台功能绑定到原型然后实例化,而不是直接将其绑定到对象,这没有帮助.

当然,我可以console.debug从分配给的匿名函数调用_.log,但后来我丢失了我的行号.还有其他想法吗?

javascript console firebug logging webkit

7
推荐指数
1
解决办法
1914
查看次数

检查迭代JavaScript变量是否安全

我有一个JavaScript函数,有人可以传递任何东西,我使用它迭代它的每个键

for x in obj
Run Code Online (Sandbox Code Playgroud)

句法.但是,如果它们传递一个原语(字符串或数字),则会导致错误; 正确的行为是函数对那些函数的行为方式与没有键的对象上的行为相同.

我可以做一个try..catch块来解决这个问题,但还有另一种(更简洁)的方法吗?

javascript

7
推荐指数
1
解决办法
149
查看次数

如何在Rails 3中重新加载所有宝石?

有没有办法在没有完全重启服务器的情况下重新加载Rails应用程序中的所有宝石?我有一个Gemfile :path用于引用我在同一系统上开发的依赖项,并且rails -s每次保存更改时都必须杀死应用程序并再次执行,这很烦人.在生产中能够更新gem而不会在几秒钟内杀死服务器也很不错.思考?

rubygems ruby-on-rails-3

7
推荐指数
1
解决办法
2452
查看次数

我可以使用哪些技术在移动设备上使JS重页面具有高性能?

我有一个涉及大量JS代码的站点(~100K包括jQuery).当我在手机或平板电脑上浏览类似的网站时,我常常对它们的缓慢感到失望.我希望我的网站在移动设备上表现良好(在页面加载时间响应能力方面),而无需开发单独的"移动友好"版本的网站或交换大部分代码.

当然,有无数的性能技术适用于所有环境.我想听听事情我可能想的性能,我会移动/蜂窝环境做希望在桌面/宽带环境的事情.

以下是我正在寻找的几个例子:

  • 设置jQuery.fx.off = true为跳过动画
  • 禁用像密集的CSS效果box-shadow,text-shadowborder-radius

还有什么?

javascript performance mobile jquery

7
推荐指数
1
解决办法
336
查看次数

仅在服务器模式下将初始化步骤添加到Rails 3引导过程

根据http://edgeapi.rubyonrails.org/classes/Rails/Railtie.html,如果我写一个Rails 3插件并且我想挂钩初始化过程,我写

class MyRailtie < Rails::Railtie
  initializer "my_railtie.configure_rails_initialization" do
    # some initialization behavior
  end
end
Run Code Online (Sandbox Code Playgroud)

但是,这个初始化程序似乎在您运行Rails rake任务时执行,而不仅仅是在您运行rails s或类似时执行.我的问题是,如何防止在Rails任务期间运行此块中的代码,而不是完整的Rails服务器启动?这似乎是Rails 3插件的常见问题.

ruby-on-rails-plugins ruby-on-rails-3

6
推荐指数
1
解决办法
1371
查看次数