javascript - 如何更改脚本生成的 HTML 中的属性?

标签 javascript jquery html

我正在使用来自联合搜索服务的小部件脚本:

<script type="text/javascript" id="s9f5b2bb09b74013279b22ae8d1b2df50" src="http://uleth.summon.serialssolutions.com/widgets/box.js"></script>
<script type="text/javascript">new SummonCustomSearchBox({"id":"#s9f5b2bb09b74013279b22ae8d1b2df50","params":{},"colors":{},"searchbutton_text":"Search","suggest":"true","popup":"true"})</script>

当页面加载时生成以下 HTML:

<form id="s9f5b2bb09b74013279b22ae8d1b2df50" method="get" action="http://uleth.summon.serialssolutions.com/search" class="summon-search-widget" accept-charset="utf-8" target="_blank">
<input name="utf8" value="✓" type="hidden">
<div class="summon-search-box">
<input class="summon-search-field" name="s.q" autocomplete="off" placeholder="" data-boxwidth="" type="text">
<input value="Search" class="summon-search-submit button-website" type="submit">
</div>
</form>

我正在尝试使用以下 jquery 插入一些占位符测试,但它不起作用...

$(".summon-search-field").attr("placeholder", "Search for books, articles, videos...");

jquery 在 this fiddle 中处理生成的 HTML ,但由于某种原因,它无法使用小部件脚本在页面上运行。我可以让它与 .click() 函数一起工作,但我无法让它与 $(document).ready() 或 window.onload 一起加载。

我很抱歉没有使用脚本作为外部资源制作 fiddle ,但它不适用于 https://。

如何保留我的占位符文本?

最佳答案

JSFiddle 使用 $(window).load(function(){

这会等待整个页面加载完毕。如果您遇到更多错误。添加:

$(window).load(function(){setTimeout(function () {
     //Code
},1)});

$(window).load()

关于javascript - 如何更改脚本生成的 HTML 中的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29857625/

相关文章:

html - 选项卡显示在具有可见类的下一行

javascript - 测试传递给 Angular Material Dialog 实例的 Controller

javascript - 使用 Jquery 按钮无法禁用按钮

javascript - 不显眼的 JavaScript 过时了吗?

javascript - 在 OpenLayers 示例中调用 domtoimage.toPng() 时出现 "SecurityError: This operation is insecure"

javascript - 如何改变div内所有图像的高度?

html - 如何在不变形的情况下获得比周围框更大的图片?

jquery - 如何编写 jQuery 选择器来匹配 id 以相同字符串开头的两个元素

javascript - MVC 模型绑定(bind) jQuery Ajax

html - IE7不理解显示: inline-block