我有以下标记:
<li id="CN2787">
<img class="fav_star" src="images/fav.png">
<span>Text, text and more text</span>
</li>
Run Code Online (Sandbox Code Playgroud)
我想要它,这样如果文本换行,它就不会进入图像的"列".我知道我可以用table(我正在做的)这样做但是由于这个原因这是不可行的.
我试过以下但没有成功:
li span {width: 100px; margin-left: 20px}
.fav_star {width: 20px}
Run Code Online (Sandbox Code Playgroud)
我也试过了float: right.
谢谢.
编辑:我希望它看起来像这样:
IMG Text starts here and keeps going... and
wrap starts here.
Run Code Online (Sandbox Code Playgroud)
不是这样的:
IMG Text starts here and keeps going... and
wrap starts in the space left for the image.
Run Code Online (Sandbox Code Playgroud) 一方面,我读到或听到"函数调用很昂贵"并且它们会影响效率(例如,在Nicholas Zakas的Google技术谈话中).
在另一方面,然而,似乎接受了函数/方法最好剪短,只应该真正执行一个任务,如一般在接受这里.
我在这里遗漏了什么,或者这两条建议是否相互冲突?是否有一些经验法则允许人们保持禅宗般的平衡?
我想知道哪个选项更好,特别是在速度方面:
$('#id tag')...
Run Code Online (Sandbox Code Playgroud)
要么
$('#id').find('tag')...
Run Code Online (Sandbox Code Playgroud)
此外,如果您更改id和/或更换tag一个class或类似的内容,相同的答案是否适用input:checked?
例如,哪个更好:$('#id input:checked')...或$('#id').find('input:checked');?
我经常使用这种结构:
var example = (function () {
function privateFn2 () {
...
}
function privateFn1 () {
...
}
return {
publicMethod1: function () {...
},
publicMethod2: function () {...
}
};
}());
Run Code Online (Sandbox Code Playgroud)
我想知道的是:如果privateFn1是唯一调用privateFn2的函数/方法,那么将它设置为如下更好的做法?
为清楚起见,已编辑
var example = (function () {
function privateFn1() {
function privateFn2() {
}
...
privateFn2();
}
return {
publicMethod1: function () {...
},
publicMethod2: function () {...
}
};
}());
Run Code Online (Sandbox Code Playgroud)
当然,这是一个非常简单的例子.问题是我有很多私有函数,我想知道嵌套是否被很好地考虑.我认识到这很可能是一个偏好问题,但任何建议都会感激不尽.
谢谢.
我姗姗来迟地设置Aptana使用四个空格而不是标签.我已经对首选项进行了必要的更改,因此每个新选项卡都会插入四个空格.
但是,所有现有选项卡仍然存在,因此我收到Mixed spaces and tab错误.你怎么能Replace all解决这个问题?我试过了^t,<TAB>但它只是搜索这些作为普通字符串.指定空格和制表符的正确方法是什么?
我把它放在我的头部.它出现在浏览器的页面源中.
<meta http-equiv="Cache-Control" content="max-age=1209600">
Run Code Online (Sandbox Code Playgroud)
但是,当我查看Chrome扩展程序时Live HTTP Headers,它会显示以下内容.
Cache-Control: max-age=0
Content-Encoding: gzip
Content-Length: 5849
Content-Type: text/html; charset=utf-8
Date: Sat, 05 Apr 2014 04:29:16 GMT
Expires: Sat, 05 Apr 2014 04:29:16 GMT
Last-Modified: Sat, 05 Apr 2014 03:33:19 GMT
Run Code Online (Sandbox Code Playgroud)
该max-age未登记.我已经清空了浏览器缓存,但它没有任何区别.
有什么解释吗?顺便说一句,这是该网站.
更新:
Firebug同样记录Cache-Control: max-age=0.
谷歌在这里也说明了max-age覆盖Expires标题(我没有设置),你不需要两者.
由此:
var $saved = $('#parent').find('a');
Run Code Online (Sandbox Code Playgroud)
我现在如何选择那些$saved有类的元素myClass呢?
我不想要后代(这样find或children不好),我想要$的子集保存.
var $refined = $saved.[something something];
Run Code Online (Sandbox Code Playgroud)
从本质上讲,我希望$refined能够等同$('#parent').find('a.myClass');于开始$saved.
谢谢.
在jQuery中,您可以执行以下操作:
$('#j_unoffered').on('click', '.icon_del', function () {...
Run Code Online (Sandbox Code Playgroud)
j_unoffered如果icon_del单击任何带有类的后代元素,则会在触发的元素上放置一个处理程序.此外,它适用于任何后续创建的icon_del元素.
我可以在Closure中正常工作,其中点击是在元素本身上.
goog.events.listen(
goog.dom.getElement('j_unoffered'),
goog.events.EventType.CLICK,
function(e) {...
Run Code Online (Sandbox Code Playgroud)
我如何在Closure中指定一个父事件目标,它以与jQuery示例相同的方式为其子/后代工作?
我假设我需要以setParentEventTarget某种方式使用,但我不确定如何为DOM事件实现它.我发现的大多数文档都与自定义调度事件有关.
- 更新 -
我想知道这个相当简单的解决方案是否有任何问题:
goog.events.listen(
goog.dom.getElement('j_unoffered'),
goog.events.EventType.CLICK,
function(e) {
if (e.target.className.indexOf('icon_del') !== -1) {...
Run Code Online (Sandbox Code Playgroud)
它仍然this与父母绑定,但e.target允许解决方法.listen(opt_handler)中的第五个参数允许你绑定this到其他东西,所以我猜这也是一个途径.
javascript jquery event-handling event-delegation google-closure
我刚买了一台新电脑,而且我一直在设置PHP/MySQL /数据库等......我想我就在那里,除了抛出这个曲线球.我的登录脚本工作正常,但现在它吐出了以下警告(这会混淆JSON).
警告:date()[function.date]:依赖系统的时区设置是不安全的.您 需要使用date.timezone设置或date_default_timezone_set()函数.如果您使用了这些方法中的任何一种并且仍然收到此警告,则很可能拼错了时区标识符.我们在第47行 选择'EST/10.0/no DST'中的'Antarctica/Macquarie'而不是.../php/login.php
我的代码显然使用date()并在现场版本和旧机器上工作.我得到以下两行代码的两个警告:
$date = date("ymd");
$this_year = date("y");
Run Code Online (Sandbox Code Playgroud)
我的研究(见这里)表明这些函数的行为取决于php.ini.
那么我应该在新机器上更改php.ini,还是我使用某种不推荐的方法,我应该date()完全抛弃?
谢谢.
我得到的基本思想this在不是method在当strict mode概述这里,但它变得有点博学,是诚实的.所以,用更平淡的术语:
我有一个像这样的处理程序:
$('.myClass').one('keyup', function() {
var $this = $(this);
etc etc
});
Run Code Online (Sandbox Code Playgroud)
我想把它改成这个:
function myFunction () {
var $this = $(this);
etc etc
};
$('.myClass1').one('keyup', myFunction);
$('.myClass2').one('keyup', myFunction); etc
Run Code Online (Sandbox Code Playgroud)
它不喜欢它,因为strict mode因为我在this一个方法之外使用.我明白了.
但是,我需要myFunction与处理程序分开,因为(1)它附加到各种类/元素和(2)我用于在各个点.off().one('keyup', myFunction)重置one各种类的处理程序.
那么如何在不违反this业务的情况下绕过单独的回调函数呢?