3

我正在尝试将谷歌自定义搜索引擎实现到使用 xslt 运行的网站。

此代码位于头部

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

而正文中的这个片段

<gcse:search></gcse:search>

但我只收到以下错误警告:DOMDocument::load(): Namespace prefix google on search is not defined

一些想法为什么?我需要一个特殊的 xmlns 吗?

干杯

4

2 回答 2

7

我正在尝试理解https://developers.google.com/custom-search/docs/element#overview和您发布的问题。我有点猜测,但基于https://developers.google.com/custom-search/docs/element#html5尝试<gcse:search></gcse:search>在您的代码中替换为<div class="gcse-search"></div>,这样我希望您的 XSLT 输入是格式良好的命名空间并且您的尝试将 Google 搜索包含在转换结果中。

于 2012-08-24T17:18:54.480 回答
1

只是从上面 Martin 分享的链接中带出如何添加属性示例:

HTML5 有效的 div 标签

只要您遵守以下准则,您就可以使用 HTML5 有效的 div 标签:

  • 类属性必须设置为gcse-XXX
  • 任何属性都必须以data-为前缀。

例如:

<div class="gcse-searchbox" data-resultsUrl="http://www.example.com"
     data-newWindow="true" data-queryParameterName="search" >

于 2016-11-29T05:04:25.040 回答