Javascript 如何在Google自定义搜索输入元素之前插入标签元素?

Javascript 如何在Google自定义搜索输入元素之前插入标签元素?,javascript,google-custom-search,Javascript,Google Custom Search,我正在使用insertBefore()尝试在Google自定义搜索输入元素之前放置一个“label”元素作为占位符文本,但在我当前的代码中出现错误:“无法读取未定义的属性'insertBefore'。这是我的密码: window.onload = function() { var el = document.getElementById('gsc-i-id1'); el.setAttribute('placeholder', 'Enter your search

我正在使用insertBefore()尝试在Google自定义搜索输入元素之前放置一个“label”元素作为占位符文本,但在我当前的代码中出现错误:“无法读取未定义的属性'insertBefore'。这是我的密码:

window.onload = function() {
        var el = document.getElementById('gsc-i-id1');
        el.setAttribute('placeholder', 'Enter your search term...');
        el.style.background = '';
        el.style.textIndent = '0';
        el.addEventListener('blur', function(e) {
            e.target.style.backgroundImage = 'none';
            e.target.style.textIndent = '0';
            }, false );

<!-- create absolutly positioned label as placeholder text for search -->
        var searchParent = el.parentNode;
        var label = document.createElement('label');
        var labelText = document.createTextNode('Enter your search term...');
        label.appendChild(labelText);
        label.className += 'search-label-placeholder';
        console.log(searchParent);
        console.log(label);
        console.log(el);
        document.searchParent.insertBefore(label, el);

<!-- this doesn't work for adding a placeholder -->      
        var searchIcon = document.getElementById('search-icon');
        searchIcon.addEventListener('click', function(e) {
                e.preventDefault();
                el.focus( function() {
                el.setAttribute('placeholder', 'Enter your search term...');
                });
            }, false );
        };
    </script>
window.onload=function(){
var el=document.getElementById('gsc-i-id1');
el.setAttribute('占位符','输入搜索词…');
el.style.background='';
el.style.textIndent='0';
el.addEventListener('blur',函数(e){
e、 target.style.backgroundImage='none';
e、 target.style.textIndent='0';
},假);
var searchParent=el.parentNode;
var label=document.createElement('label');
var labelText=document.createTextNode('输入搜索词…');
label.appendChild(labelText);
label.className+=“搜索标签占位符”;
console.log(searchParent);
控制台日志(标签);
控制台日志(el);
document.searchParent.insertBefore(标签,el);
var searchIcon=document.getElementById('search-icon');
searchIcon.addEventListener('click',函数(e){
e、 预防默认值();
el.focus(函数(){
el.setAttribute('占位符','输入搜索词…');
});
},假);
};

尝试更换此行

document.searchParent.insertBefore(label, el);
为此:

document.insertBefore(label, searchParent);

解决方案是在使用insertBefore()时使用父元素而不是文档


错误:文档上只允许一个元素。
searchParent.insertBefore(label, el);