我正在尝试将“搜索...”的占位符替换为其他内容。问题是 - 输入暂时没有加载,我无法弄清楚如何检测输入何时加载。这是页面链接,因此您可以看到其加载https://asahouston.org/membership/member-directory/
的方式这是我尝试过的,但它似乎没有检测到输入字段。
<script type="text/javascript">
document.addEventListener("load", function(){
document.getElementsByClassName(".SFfndtag input[type=text]").placeholder = "Search for Company Name...";
}
</script>
我尝试过其他一些东西,但我的javascript技能缺乏。我很感激你能提供的任何帮助。谢谢!
答案 0 :(得分:1)
尝试更改
document.addEvenlistener('load'...
到
window.adEventListener('load'...
<强>的window.onload 强>
默认情况下,它会在整个页面加载时触发,包括其内容(图像,css,脚本等)。在某些浏览器中,它现在接管了document.onload的角色,并在DOM准备就绪时触发
<强> document.onload 强>
当DOM准备就绪时调用它,它可以在图像之前加载其他外部内容。
---编辑---
绝对不是最优雅的,但这应该可以解决问题。
var changePlaceholderInterval = setInterval(function () {changePlaceholder()}, 100);
function changePlaceholder() {
if(document.querySelector('.SFfndtag input')){
document.querySelector('.SFfndtag input').placeholder = "Search for Company Name...";
window.clearInterval(changePlaceholderInterval);
}
}
答案 1 :(得分:0)
使用attr for JQuery或setAttribute for Javascript:
<强> JQuery的强>
$('.SFfndtag').attr("placeholder", "Search for Company Name...");
<强>的Javascript 强>
document.getElementsByClassName("SFfndtag").setAttribute("placeholder","Search for Company Name...");
希望它对你有所帮助。