注意事项一:

Firefox下JQuery选择器之[attribute^=value]使用注意事项

之前写的一个脚本中用到了

var bindAttrs = $("[databind^='attr'", item);
大家都看出存在的问题了吧?

这脚本用了一段时间了,但一直没用Firefox下测试过,

在其它浏览器下都能正常使用!


今天突然有人发现在Firefox下加载的数据不正确,

经过一段时间的调试,最后发现是代码写的有问题,

犯了一个低级的错误,只写了左中括号,忘了写右中括号。

注意事项二:

相关HTML:

<div id="Zy_hotsort_img" class="Zy_hotsort_img">
<img src="${ctx}/images/resource/jpg02.jpg" databind="attr:{src:=http://{{newCourseware.coverpath}}}" >
<div class="Zy_newicon">new</div>
</div>
相关JS代码:

var item = $("#Zy_hotsort_img").html();
var bindAttrs = $("*[databind^='attr']", item);
问题出现了,这样子是获取不到databind属性为attr开头的img元素的,那应该怎么写呢?

写法一:

var item = $("#Zy_hotsort_img").prop("outerHTML");
var bindAttrs = $("*[databind^='attr']", item);

写法二:

var item = $("#Zy_hotsort_img").html();
var bindAttrs = $("*[databind^='attr']", $("<div></div>").append(item));


本文转载:CSDN博客