首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用jQuery或CSS修改元素属性?

如何使用jQuery或CSS修改元素属性?
EN

Stack Overflow用户
提问于 2020-08-19 22:25:41
回答 4查看 65关注 0票数 1

我正在尝试改变这一点:

代码语言:javascript
复制
<script type="text/javascript" src="//static.cdn-ec.viddler.com/js/arpeggio/v3/build/main-built.js"></script>

<div class="viddler-auto-embed" data-embed-id="yLDrFKPE4u" data-video-id="b69c8ee1" data-width="380" data-height="285"></div>

并将data width的值更改为: data-width="450“

我有400多个视频在我的网站上,想使用一个快捷方式,只改变380到450的数据宽度的值。

如果有人能帮我的话我将不胜感激。

谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2020-08-19 22:31:30

首先抓取元素数据集并检查是否为380,然后根据类名和样式宽度将元素抓取到450px。

不过,我怀疑您并不是真的想设置data-width和data- height,而是设置width和height,然后直接访问它们。

代码语言:javascript
复制
var element = document.getElementsByClassName('viddler-auto-embed')[0].dataset;


if (element.width == 380)
document.getElementsByClassName('viddler-auto-embed')[0].style.width ='450px'
代码语言:javascript
复制
.viddler-auto-embed{
border:black solid 2px;
height:100px;}
代码语言:javascript
复制
<div class="viddler-auto-embed" data-embed-id="yLDrFKPE4u" data-video-id="b69c8ee1" data-width="380" data-height="285"></div>

票数 5
EN

Stack Overflow用户

发布于 2020-08-19 23:07:16

我不确定它是否能工作,但你可以试试这个:

代码语言:javascript
复制
function widthChanger() {
    let videos = document.querySelectorAll('.viddler-auto-embed');
    let i = 0
    while (i < videos.length - 1) { // loop through all videos
        videos[i].setAttribute("data-width", 450); // changing the data here
    };
};

widthChanger(); // running the function

票数 1
EN

Stack Overflow用户

发布于 2020-08-19 22:50:25

有两种方法可以做到这一点,你可以使用dataattr方法来改变它,哪一种方法对你来说是有效的,这取决于插件如何读取这个道具。你可以试一试,然后选择适合你的。

代码语言:javascript
复制
//first
$('.viddler-auto-embed').data('width', 450);
console.log(
  'viddler-auto-embed: ',
  $('.viddler-auto-embed').data()
);

//second
$('.viddler-auto-embed1').attr('data-width', 450);
console.log(
  'viddler-auto-embed1: ',
  $('.viddler-auto-embed1').data()
);
代码语言:javascript
复制
.viddler-auto-embed {background: #eee;}
.viddler-auto-embed::before {
  content: attr(data-width);
  color: red;
}

.viddler-auto-embed1 {background: #777;}
.viddler-auto-embed1::before {
  content: attr(data-width);
  color: white;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<div class="viddler-auto-embed" data-embed-id="yLDrFKPE4u" data-video-id="b69c8ee1" data-width="380" data-height="285"></div>

<div class="viddler-auto-embed1" data-embed-id="yLDrFKPE4u" data-video-id="b69c8ee1" data-width="380" data-height="285"></div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63489162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档