如何从jquery中的字符串获取特定字符

时间:2016-06-16 11:46:17

标签: javascript jquery html

我有以下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不管用。

请帮助我如何获取海报标签的数据。 (图片路径)

4 个答案:

答案 0 :(得分:3)

您可以将字符串强制转换为JQuery对象。

为了便于理解,我已经为您分解了一步。

&#13;
&#13;
// 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;
&#13;
&#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');