Я работаю над кодом js/jquery, в котором я хочу переопределить текущий css, присутствующий в приведенном ниже html-коде.
JavaScript/JQuery:
<script>
$("div.scribble-live").find("iframe").css("height", "200 px");
</script>
HTML-код:
<div class = "scribble-live">
<div class = "scrbbl-embed">
<iframe name = "ee5bdd02" width = "100%" height = "15299px" frameborder = "0" allowtransparency = "true" scrolling = "no" title = "scrbbl:event ScribbleLive Embed" src = "" class = "scrbbl-embed scrbbl-event" style = "border: none; visibility: visible; width: 50px; height: 15299px; min-width: 100%;"></iframe>
</div>
</div>
Постановка задачи:
Приведенный выше код js/jquery, похоже, не переопределяет css ( style = "border: none; visibility: visible; width: 50px; height: 15236px; min-width: 100%;"), присутствующий в приведенном выше HTML-коде.
Я также пробовал использовать следующие сценарии, но, похоже, они не работают.
<script>
$("div.scribble-live").find("iframe").attr("height", "200px");
</script>
<script>
$("div.scribble-live").find("iframe").attr("height", "200px");
$("div.scribble-live .scrbbl-event").height("200px");
</script>
Это не сработало до сих пор
Работает просто отлично -> jsfiddle.net/9wfLah1j
$("div.scribble-live").find("iframe").css("height", "200px");@adeneo В моей кодовой базе display:none вроде работает, но я не знаю, почему height:200px не работает
Вы пробовали строку выше, с css() ?
да, я скопировал ту же строку.
@adeneo Я обновил свой HTML-код. Кроме того, HTML-код генерируется во время выполнения с помощью скрипта.
Что вы подразумеваете под "временем выполнения"? Если он сгенерирован с помощью javascript, вам, возможно, придется обернуть «setTimeout» вокруг кода, который изменяет стили.
@adeneo это работает $("div.scribble-live").find("iframe").css("display", "none"); но не $("div.scribble-live").find("iframe").css("height", "200px");
Тогда у вас, вероятно, есть переопределяющие стили, может быть, что-то такое !important?
Да, он генерируется через javascript. Можете ли вы дать мне знать в ответ, что мне нужно сделать?
Нет, у меня нет приоритетных стилей.
Я понятия не имею, что вам нужно сделать, строка выше работает для меня, поэтому вы должны выяснить, почему она не работает для вас?
Вы можете добавить такую задержку, чтобы посмотреть, поможет ли это -> jsfiddle.net/74hg8txL/1
Дублирование вашего предыдущего вопроса, stackoverflow.com/questions/55406588



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Кажется, все работает. Можно рассмотреть возможность использования обратного вызова .ready() для iframe или использования setTimeout() для ожидания перед внесением изменений.
$(function() {
setTimeout(function() {
$(".scrbbl-event").css("height", "200px");
}, 500);
});<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class = "scribble-live">
<div class = "scrbbl-embed">
<iframe name = "ee5bdd02" allowtransparency = "true" scrolling = "no" title = "scrbbl:event ScribbleLive Embed" src = "" class = "scrbbl-embed scrbbl-event" style = "background: #ccc; border: none; width: 50px; height: 15299px; min-width: 100%;"></iframe>
</div>
</div>Надеюсь, это поможет.
возможно типо?
200pxне200 px