有没有办法使用jQuery获得块内容的第5行(第一个字母的偏移量)?
我的意思是可视线,浏览器计算的线,而不是源代码中的线。
jQuery.fn.line = function(line) {
var dummy = this.clone().css({
top: -9999,
left: -9999,
position: 'absolute',
width: this.width()
}).appendTo(this.parent()),
text = dummy.text().match(/\S+\s+/g);
var words = text.length,
lastTopOffset = 0,
lineNumber = 0,
ret = '',
found = false;
for (var i = 0; i < words; ++i) {
dummy.html(
text.slice(0,i).join('') +
text[i].replace(/(\S)/, '$1<span/>') +
text.slice(i+1).join('')
);
var topOffset = jQuery('span', dummy).offset().top;
if (topOffset !== lastTopOffset) {
lineNumber += 1;
}
lastTopOffset = topOffset;
if (lineNumber === line) {
found = true;
ret += text[i];
} else {
if (found) {
break;
}
}
}
dummy.remove();
return ret;
};
$('#someParagraph').line(3); // blah blah blah
示例: http :
//jsbin.com/akave
它遍历整个元素(实际上是元素的克隆),并 <span/>
在每个单词中插入一个元素。跨度的最高偏移量已缓存-
当此偏移量更改时,我们可以假定我们在新行上。
问题内容: 我正在使用jQuery和 此插件 从外部站点提取内容。 使用以下代码,效果很好: 但是,我真正想做的只是从目标站点中拉出一个部分(div),我知道这仅在使用该方法时才可行,而在时才可行。 然后,我找到了 这段代码 ,但是当我尝试将其构建到代码中时,它似乎不起作用,如下所示: 调查Firebug上的请求,该请求看起来确实成功,但是代码似乎无法在目标站点上找到以下标记: 我是否需要确保目标
问题内容: 我正在使用Ajax访问字典REST API。 响应: 在我的测试示例中,我收到有关成功的警报。我看到的大多数Ajax示例都使用循环,但是我返回一个结果。如何从对象中提取和值? 问题答案: 如您所见,您的回应以开头,以结束。因此,您的响应是一个数组。然后,在数组内部获得对象(以开头和结尾)。所以,你是一个数组,其可与被访问:(x是指数),并且将所选对象的每个成员可以与.DOT符号来访问,
问题内容: 好吧,说我有这个: 如果我想获得值“ 2”时选择“选项B”,选择器会是什么样? 请注意,这不是在询问如何获取 选定的 文本值,而是询问其中的任何一个(是否选择),具体取决于value属性。我试过了: 但这是行不通的。 问题答案: 它正在寻找ID 为且属性等于的元素。 您想要的是的孩子:
问题内容: 我想要Excel中特定行的列数。那怎么可能?我使用了POI API 但是我只能得到7的列数。 我希望特定行号的列数为10。excel列不一样 问题答案: 您可以做两件事 用 要么 他们之间有很好的区别 选项1给出实际填充内容的列数(如果10列的第二列未填充,您将得到9) 选项2仅给您最后一列的索引。因此完成了“ getLastCellNum()”
问题内容: 我想使用jQuery获取类名 如果它有一个ID 问题答案: 通过除其类以外的其他方式将元素作为jQuery对象获取后, 应该可以。对于ID,请使用。 如果您位于事件处理程序或其他jQuery方法中,而该元素是没有包装的纯DOM节点,则可以使用: 两者都是标准的DOM方法,并且在所有浏览器中都得到很好的支持。
本文向大家介绍使用jQuery获取data-的自定义属性,包括了使用jQuery获取data-的自定义属性的使用技巧和注意事项,需要的朋友参考一下 废话少说,先上代码 通过jQuery制作组件,可以轻松获取到我们data-的自定义属性,也可以给data-属性来赋值。 获取: 赋值: