在我的 html 网站的谷歌自定义搜索引擎的文本框中添加占位符

Posted

技术标签:

【中文标题】在我的 html 网站的谷歌自定义搜索引擎的文本框中添加占位符【英文标题】:Adding placeholder to text box in google custom search engine in my html website 【发布时间】:2016-05-09 15:24:01 【问题描述】:

我使用以下代码添加了谷歌自定义搜索引擎。

(function() 
    var cx = '005899633628958982661:wekn1lpckzg';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
                '//cse.google.com/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
)();

现在我的网站有一个可用的搜索框,唯一的问题是我无法为搜索文本框使用占位符。

我也试过代码

$('input.gsc-input').attr('placeholder', 'custom text here');

但它不起作用。

【问题讨论】:

输入正确吗?我也会使用引号" 您是否正在使用 document.ready 调用此行?我在上面的代码中没有看到它 是的,它是 uder document.ready.. 我也尝试将代码放在页面末尾,但这也无济于事。 ***.com/questions/10688387/… 我刚刚尝试了上面的链接,我需要对代码进行任何更改还是应该按原样粘贴?因为按原样粘贴也无济于事。 【参考方案1】:

这个对我有用:

window.onload = demo;

function demo() 
    document.getElementById("gsc-i-id1").setAttribute("placeholder", "SEARCH")

【讨论】:

【参考方案2】:

我使用了以下代码,它对我有用!

(function()    
    var cx = '!!!!!!!!!!!!!!!!!!!';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = 'https://cse.google.com/cse.js?cx='+ cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
)();

window.onload = function()
document.getElementById('gsc-i-id1').placeholder = 'SEARCH';
;

【讨论】:

我猜,document.getElementsByNames('search')[0].placeholder 更好.. 因为搜索框的 id 是随机的。 如果您使用的是 GCS,则 id 可以通过检查元素确定。因为在复杂页面上可能有另一个与“搜索”同名的元素! @AnuBhuvanendranNair document.getElementsByNames 并不总是有效和可靠的方式。 Google 自定义搜索会生成 id 'gsc-i-id1',有时会生成 'gsc-i-id2'.. 据我了解,id 值是随机的。那document.getElementById怎么靠谱?? 嗯,它在我的实时网站上使用 id 可以完美运行很长时间,所以一旦它为特定页面生成 id,只要我知道它最终不会改变它。您只需要通过检查元素查找 id 并且只需在代码中放置一次。所以对我来说 id 简单可靠!! id 在所有站点上都是相同的,就我而言,确切的 id 在 3 个安装上。谢谢这个解决方案效果很好。

以上是关于在我的 html 网站的谷歌自定义搜索引擎的文本框中添加占位符的主要内容,如果未能解决你的问题,请参考以下文章

谷歌自定义搜索引擎的链接列表

谷歌自定义搜索 JSON API

javascript 谷歌自定义搜索

谷歌自定义搜索排序日期范围标准不起作用

从网站构建器HTML内容框中,使用javascript从Google电子表格中过滤文本/名称

如何在您的网站中嵌入样式化的谷歌地图