我有以下html,不能使用“attr”,所以根据我的说法,只有substring是从以下html获取特定数据的选项:
<video poster="images/IMG_4979.jpg" controls=""><source type="video/mp4" src="video/IMG_4979.mp4"></source></video>
实际上,我想获得海报标签的数据。我试着通过以下方式,但它总是返回错误的数据。
var pswp.currItem.html = '<video poster="images/IMG_4979.jpg" controls=""><source type="video/mp4" src="video/IMG_4979.mp4"></source></video>'
var misc = pswp.currItem.html.substring(0, pswp.currItem.html.indexOf('controls'));
alert(misc)
我在这里创建了“ pswp.currItem.html ”作为var,以便它可以很容易理解,但它来自这个“pswp.currItem.html”对象,attr不管用。
请帮助我如何获取海报标签的数据。 (图片路径)
答案 0 :(得分:3)
您可以将字符串强制转换为JQuery对象。
为了便于理解,我已经为您分解了一步。
// this is your HTML string
var html_str = '<video poster="images/IMG_4979.jpg" controls=""><source type="video/mp4" src="video/IMG_4979.mp4"></source></video>';
// now we create a JQuery object from your string
var $jq_obj = $(html_str);
// now we can access the JQuery object as if it were part of the DOM
var poster = $jq_obj.attr('poster');
// log the attribute
console.log(poster);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
&#13;
答案 1 :(得分:0)
如果pswp.currItem.html字符串格式保持不变,这将有效。
Base
答案 2 :(得分:0)
<p ng-show="temp < 17"></p>
<h1> too short </h1>
<p></p>
属性无法在您的自定义对象attr
上运行,但如果您使用jQuery包装此字符串肯定会有效:
pswp.currItem.html
答案 3 :(得分:-1)
为什么不能使用attr?为什么要尝试为对象赋值?
var posterTag = $('video').attr('poster');