小编Nat*_*ong的帖子

HTML表格中的垂直(旋转)文本

是否有(便携式)方法将HTML表格单元格中的文本旋转90°?

(我有一个包含许多列和大量文本的表格,所以我想垂直写它以节省空间.)

html css text-rendering text-styling

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

如何在安装后更改我的Cygwin主文件夹?

我刚刚安装了Cygwin,看起来bash提示符中的主目录位于我的Z:驱动器上.那不是我想要的地方.

我怎么能改变这个?

cygwin

114
推荐指数
6
解决办法
16万
查看次数

113
推荐指数
8
解决办法
37万
查看次数

jQuery Validate - 要求填充组中的至少一个字段

我正在使用优秀的jQuery Validate插件来验证某些表单.在一种形式上,我需要确保用户填写一组字段中的至少一个.我想我有一个很好的解决方案,想分享它. 请提出您可以想到的任何改进建议.

找不到这样做的内置方法,我搜索并找到了Rebecca Murphey的自定义验证方法,这非常有用.

我通过三种方式改进了这个:

  1. 让您传入一组字段的选择器
  2. 允许您指定必须填充该组的数量才能通过验证
  3. 一旦其中一个输入通过验证,就将组中的所有输入显示为通过验证.(见呼喊出到尼克Craver在结束).

所以你可以说"至少必须填充匹配选择器Y的X输入."

最终结果,标记如下:

<input class="productinfo" name="partnumber">
<input class="productinfo" name="description">
Run Code Online (Sandbox Code Playgroud)

......是一组这样的规则:

// Both these inputs input will validate if 
// at least 1 input with class 'productinfo' is filled
partnumber: {
   require_from_group: [1,".productinfo"]
  }
description: {
   require_from_group: [1,".productinfo"]
}
Run Code Online (Sandbox Code Playgroud)

项目#3假定您.checked在成功验证后添加了一类错误消息.你可以这样做如下,这里展示.

success: function(label) {  
        label.html(" ").addClass("checked"); 
}
Run Code Online (Sandbox Code Playgroud)

正如在上面链接的演示中,我使用CSS给每个span.errorX图像作为其背景,除非它有类.checked,在这种情况下它获得一个复选标记图像.

到目前为止,这是我的代码:

jQuery.validator.addMethod("require_from_group", function(value, element, options) {
    var numberRequired = options[0];
    var selector …
Run Code Online (Sandbox Code Playgroud)

validation jquery jquery-plugins jquery-validate

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

如何优雅地处理超过PHP的`post_max_size`的文件?

我正在开发一个将文件附加到电子邮件的PHP表单,并试图优雅地处理上传文件太大的情况.

我了解到有两个设置php.ini会影响文件上传的最大大小:upload_max_filesizepost_max_size.

如果文件的大小超过upload_max_filesize,PHP将文件的大小返回为0.这很好; 我可以检查一下.

但如果超过post_max_size,我的脚本会无声地失败并返回到空白表单.

有没有办法抓住这个错误?

php upload

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

为什么Chrome会忽略本地jQuery Cookie?

我使用jQuery Cookie插件(下载演示以及带注释的源代码)来设置和读取cookie.我正在我的本地机器上开发页面.

以下代码将在FireFox 3,IE 7和Safari(PC)中成功设置cookie.但如果浏览器是谷歌浏览器并且该页面是本地文件,则它不起作用.

$.cookie("nameofcookie", cookievalue, {path: "/", expires: 30});
Run Code Online (Sandbox Code Playgroud)

我所知道的:

  • 该插件的演示适用于Chrome.
  • 如果我将我的代码放在网络服务器上(地址以http://开头),它可以与Chrome配合使用.

因此,Cookie仅针对本地文件上的Google Chrome失败.

可能的原因:

  • Google Chrome不接受来自硬盘驱动器网页的Cookie(例如file:/// C:/websites/foo.html)
  • 插件实现中的某些内容会导致Chrome拒绝此类Cookie

任何人都可以确认这一点并确定根本原因吗?

cookies jquery google-chrome

81
推荐指数
4
解决办法
6万
查看次数

为什么许多Unix程序使用像USR1这样的信号?

许多Unix程序接受像USR1和的信号USR2.例如,要动态升级Nginx的可执行文件,请发送kill -USR2.

我知道这USR1是一个"用户定义"信号,这意味着创建程序的人可以用它来表示"关闭"或"转储你的日志"或"打印foo一千次"或其他什么.但我不明白为什么他们必须使用这个任意名称.为什么不kill -UPGRADE,或kill -GRACEFUL_SHUTDOWN?Unix只允许特定信号吗?

当我们参与其中时,Nginx还使用以下信号(参见文档):

  • TERM,INT:快速关机
  • 退出:正常关机
  • HUP:
    • 配置重新加载
    • 使用新配置启动新的工作进程
    • 优雅地关闭旧的工作进程
  • USR1:重新打开日志文件
  • USR2:即时升级可执行文件
  • WINCH:正常关闭工作进程

HUP?绞车?这些名字的原因是什么?我在哪里可以了解更多相关信息?

unix signals

70
推荐指数
6
解决办法
5万
查看次数

为什么Firefox没有显示正确的默认选择选项?

我正在制作一个网络应用来管理产品SKUS.其中一部分是将SKU与产品名称相关联.在表格的每一行上,我列出一个SKU并显示一个<select>包含产品名称的框.当前与数据库中该SKU关联的产品具有类似的属性selected="selected".这可以通过AJAX进行更改和更新.

确切地说有很多产品<option>s - 103 - 这个列表<select>在每行重复.

从页面上的另一个输入,我使用jQuery AJAX请求添加新的SKU /产品关联,并清楚地表明它们是立即添加的,我将它们插入到表的顶部,带有一点突出显示效果.随着SKU数量增加到10左右,如果我刷新页面(将所有内容从按产品名称排序的数据库中加载回来),Firefox会默认显示一些错误的选项.它显示哪个不正确的选项并不一致,但它似乎混淆了页面重新加载之前存在的选项.

如果我检查<select>使用的Firebug,那么它就select="selected"在正确的<option>标签上.刷新页面(或者返回并输入此页面的URL以返回)不会使其正确显示,而是刷新(Ctrl + F5).

Chrome和IE7都首先正确显示.

我的理论是,这是Firefox的错误缓存策略的结果.听起来不错吗?有没有什么办法可以在我的代码中说"如果这个页面刷新了,那么刷新一下 - 从头开始​​重新加载一切?"

更新

为了解决这个问题,我改变了策略.

  • 以前,我在每个表行上放置一个<select>带有长列表的<option>s,并将当前值设置为默认值
  • 现在,我把当前值放在一个<span>.如果用户单击"更改"按钮,我将替换为<span>a <select>,"更改"按钮变为"确认"按钮.如果他们更改了选项并单击确认,AJAX将更新数据库,并且这次使用新值<select>返回到a <span>.

这有两个好处:

  • 它修复了上面描述的错误
  • 它需要在页面上较少的DOM元素(所有这些多余<option>S)

firefox select caching

67
推荐指数
6
解决办法
5万
查看次数

Git的包文件是否是快照而不是快照?

Git与大多数其他版本控制系统之间的主要区别之一是,其他人倾向于将提交存储为一系列增量 - 一次提交与下一次提交之间的更改集.这似乎是合乎逻辑的,因为它是存储提交的最小可能信息量.但是,提交历史记录越长,比较修订范围所需的计算就越多.

相比之下,Git 在每个版本中存储了整个项目完整快照.这并没有使回购规模显着每个提交成长的原因是项目中的每个文件存储在Git的子目录中的文件,名为对其内容的哈希值.因此,如果内容未更改,则散列未更改,并且提交仅指向同一文件.还有其他优化.

所有这些对我来说都是有意义的,直到我偶然发现有关包文件的信息,Git定期将数据放入其中以节省空间:

为了节省空间,Git使用了packfile.这是一种格式,其中的Git只会保存在第二个文件已经改变,它的指针是类似文件的一部分.

这基本上不会回到存储增量吗?如果没有,它有什么不同?这如何避免Git遇到其他版本控制系统遇到的相同问题?

例如,Subversion使用增量,回滚50个版本意味着撤消50个差异,而使用Git,您可以获取适当的快照.除非git还在packfiles中存储50个差异...是否有一些机制说"在经过一些少量的增量后,我们将存储一个全新的快照",这样我们就不会堆积太大的变更集?Git还有什么可以避免增量的缺点?

git version-control internals

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

如何在Elixir中提高一个数字?

如何用Elixir中的指数计算数字?

例如,2 3将返回8.

elixir

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