获取具有特定数据集*的元素

时间:2017-02-21 13:23:24

标签: javascript jquery dataset src

说,我在我的DOM中的某个地方<script data-src = "script.js">没有任何id或其他可识别的属性集。我如何选择该元素,以便我可以使用正确的src重置该元素。

像:

var el = //code

el.src = el.dataset.src;

也许我可以循环所有脚本标签和所有,但有没有办法通过这个信息获取特定元素?

编辑:

使用纯javascript。

5 个答案:

答案 0 :(得分:1)

您可以使用查询选择器,如下所示:

element = document.querySelectorAll("script[data-src]")[0];

答案 1 :(得分:1)

这可以通过JavaScript的querySelectorAll()

来完成

&#13;
&#13;
// Get the first script tag with the data attribute "data-src"
var theScript = document.querySelectorAll("script[data-src]")[0];

// write the data-src to the document
document.write(theScript.getAttribute('data-src'));
&#13;
<script data-src="testing.js"></script>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

使用$(document).find('[data-src]')获取对象。请注意,如果您有更多具有data-src的对象,则必须循环使用它们。

$(document).find('script[data-src]').attr("data-src", "News link")

console.log($(document).find('script[data-src]').data("src"))
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script data-src="script.js"></script>

答案 3 :(得分:0)

试试这个......

纯粹的Js。

&#13;
&#13;
var el=document.querySelector('script[data-src]');

console.log(el.dataset.src);

el.dataset.src='correct-src.js';

console.log(el.dataset.src);
&#13;
<script data-src = "script.js">
</script>
<div></div>
&#13;
&#13;
&#13;

答案 4 :(得分:0)

<强> jQuery的:

$("script[data-src='script.js']")

有关详细信息https://api.jquery.com/category/selectors/

<强> Javacript:

document.querySelector('[data-src="script.js"]')

表格详情see here