我有一个350像素宽的跨度.如果有比这更多的文本,它只是直接向右侧移到跨度的一侧.如何强制文本包装成段落?我尝试过各种各样的东西,我在网上找到了,似乎没什么用.
这需要适用于IE 6.如果它在Firefox中运行也会很好.
更新:
这里有更多信息.我正在尝试实施工具提示.这是我的代码:
HTML
<td style="text-align:left;" nowrap="nowrap" class="t-last">
<a class="htooltip" href="#">
Notes<span style="top: 40px; left: 1167px; ">
<ul>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci.</li>
</ul>
</span> …
Run Code Online (Sandbox Code Playgroud) case "$action" in
a|b)
echo for a or b
;;&
b|c)
echo for c or b
;;&
*)
echo for everything ELSE
;;&
esac
Run Code Online (Sandbox Code Playgroud)
因此,正如您所看到的,我使用的;;&
是而不是;;
ifaction=b
它将触发前两种情况。
然而,这样做的一个缺点是*)
不再“意味着”“其他一切”,而是匹配“一切”;因此b
也会触发最后一个。
PowerShell能够做我想做的事情,因为它有一个专用的default
关键字,Bash有类似的东西吗?
诸如详尽的解决方法之类的怎么[!(a|b|c)])
样?
做类似的事情会很方便case 5 in 4) echo bob; ;;& esac || echo DEFAULT
,但case
似乎不会返回任何代码。
我试图基于虚拟渲染概念渲染列表.我面临一些小问题,但他们并没有阻止这种行为.这是工作小提琴http://jsfiddle.net/53N36/9/,这是我的问题
我用700000件物品和70件镀铬物品进行了测试.下面是代码
(function () {
var list = (function () {
var temp = [];
for (var i = 0, l = 70; i < l; i++) {
temp.push("list-item-" + (i + 1));
}
return temp;
}());
function listItem(text, id) {
var _div = document.createElement('div');
_div.innerHTML = text;
_div.className = "listItem";
_div.id = id;
return _div;
}
var listHold = document.getElementById('listHolder'),
ht = listHold.clientHeight,
wt = listHold.clientWidth,
ele = listItem(list[0], 'item0'),
frag = document.createDocumentFragment();
listHold.appendChild(ele); …
Run Code Online (Sandbox Code Playgroud) 这个问题基本上就是我要问的问题,但是没有为后代节点删除事件的限制.
在这个小提琴中,我尝试通过从DOM中删除它并将其放回来删除附加的侦听器.
function removeListeners(el) {
var par = el.parentNode;
var place = el.nextSibling;
par.removeChild(el);
par.insertBefore(el, place);
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,这不起作用,你仍然可以点击以获得改变的背景(这实际上很好,我从来不知道你可以附加没有元素在DOM中的事件).
鉴于这一发现我试过这个
function removeListeners(el) {
var par = el.parentNode;
var clone = el.cloneNode(false);
par.replaceChild(clone, el);
for (var index = 0; index < el.childNodes.length; ++index)
clone.appendChild(el.childNodes[index]);
}
Run Code Online (Sandbox Code Playgroud)
尝试做一个浅层克隆,然后将所有后代复制回来,但它不会复制所有孩子.
在上述问题的回答说:"[如果你想有孩子们保持他们的听众]你将不得不求助于明确地去除听众一次一个".我不知道你将如何实现这一点.
我认为他的意思是获取事件类型列表并依次删除每个事件的侦听器(如jQuery可以).这不仅对自定义事件不可能,而且vanilla JS 没有这样的功能(您必须指定要删除的功能).
就像$
它本身不仅仅是一个用户定义的对象(它的基础是一个函数,这就是为什么你可以()
在它上面使用运算符并且它继承了所有函数的原因Function.prototype
)type
所谓的jQuery的实际Javascript 是什么宾语?
它必须是标准的类似数组的对象之一,因为你可以[]
在它上面使用运算符,你甚至不能对IE8中的字符串做什么(不,你不能,不能在Object上String
.你可以在字符串上在他们被装箱之前的文字).
所以再一次,它不是一个用户定义的对象(NB没有jQuery
对象这样的东西,它在原始的javascript中写入了一行).我感觉它是一个NodeList
(或在没有的浏览器中等效NodeList
).
您可能已经注意到这一点的原因是您已经为Array
原型添加了方法,并且您发现jQuery找到的一组节点上不存在该函数!
任何与jQuery密切相关的人都可以与我分享这个较低级别的信息吗?或者是否有一个简短的,详尽的Javascript中类似数组的对象列表,我可以测试jQuery对象,直到找到它自己是哪一个?
我问这个的原因,而不是假设jQuery只是添加元素到对象,使用索引作为属性名称(即obj[0] = x;
)是由于Chrome开发工具和Firebug如何显示它们.
这显示了展示Array,jQuery和类似对象的开发工具,并且jQuery正在做的事情背后至少有一些魔力.
编辑
这不是一个NodeList
.如果它有帮助; 在Chrome中检查它表明它是jQuery.fn.jQuery.init[0]
一个__proto__
描述自己的类型Object[0]
(它有所有的jquery方法).任何解释jQuery正在做什么以及如何做的人都会非常感谢.我现在要看看jQuery的源代码.
至于图像,它不仅仅是被覆盖的.toString()
.
$('').toString == Object.prototype.toString //true
$('').toString == Array.prototype.toString //false
Run Code Online (Sandbox Code Playgroud) 我有一个包含以下变量(实体)的类:
Identifier
Entry_Number
Rest_of_the_data
Run Code Online (Sandbox Code Playgroud)
我想按如下方式对这个类的实例进行排序:
按Identifier
变量对实例进行Identifier
排序,然后对于具有相同值的实例,按变量对它们进行排序Entry_Number
.
我知道我可以将这些实体中的一个实现Comparable作为关键,但我不知道如何对这两个实体进行顺序排序.
也就是说,在按Identifier
我排序的时间排序之后Entry_Number
,不应该干扰初始排序 - 第二次排序应该仅适用于具有相同Identifier
值的那些实例.
所以,实际上,我希望能够传递"第二个关键"项来解决关系.
javascript ×4
algorithm ×1
bash ×1
css ×1
fall-through ×1
html ×1
java ×1
jquery ×1
object ×1
progressive ×1
syntax ×1
word-wrap ×1