网站集成百度、Bing必应搜索引擎,在网页中实现站内全文搜索


发布者 ourjs  发布时间 1595209876070
关键字 分享  编程技巧  JavaScript 

OurJS网站之前一直使用Bing实现站内搜索,基本原理是搜索时添加关键字  site:ourjs.com 即可限定只搜索 ourjs.com 网站内的内容。因此在实现时需要通过JavaScript改变最终的搜索词。

但有用户反应对中文支持不太友好,并且提交 Sitemap 后,百度收录速度明显快于Bing。现在已经换成了百度搜索。

Bing站内搜索

搜索引擎相关模板,存放在 mod\ourjs\web\ourjs.nav.part

Bing的搜索引擎关键字为 q,这里使用query存放用户输入的关键字,q存放拼接site:ourjs.com之后的关键字。

<form class="navbar-form navbar-right site-search" action="http://cn.bing.com/search" target="_blank">
<div class="form-group">
<input type="text" name="query" class="form-control" placeholder="搜索" value="{{=it.query || ''}}">
<input type="hidden" class="realQuery" name="q" value=" site:ourjs.com">
</div>
<button type="submit" class="btn btn-default">搜索</button>
</form>

然后添加一点JS代码即可。

var OurJS = window.OurJS = window.OurJS || {};

OurJS.Search = (function() {
var $siteSearchForm = $('.site-search')
var $inputQuery = $siteSearchForm.find('input')
var $realQuery = $siteSearchForm.find('.realQuery')
var $btnSubmit = $siteSearchForm.find('.btn')

var updateQuery = function(e) {
var query = $inputQuery.val()

$realQuery.val(query + ' site:ourjs.com')
}

$inputQuery.on('keyup', updateQuery)
$btnSubmit.on('click', updateQuery)

updateQuery()

})();

 

百度站内搜索

百度与Bing类似,搜索关键字为 wd,搜索网址为 https://www.baidu.com/s

<form class="navbar-form navbar-right site-search" action="https://www.baidu.com/s" target="_blank">
<div class="form-group">
<input type="text" name="query" class="form-control" placeholder="搜索" value="{{=it.query || ''}}">
<input type="hidden" class="realQuery" name="wd" value=" site:ourjs.com">
</div>
<button type="submit" class="btn btn-default">搜索</button>
</form>

这样搜索引擎集成完成。









 热门文章 - 分享最多
  1. React Hooks入门教程九:在React中集成使用Vue实现数据双向绑定,手动配置Webpack和Babel
  2. node.js性能压力测试入门教程:wrk和loadtest安装使用
  3. JavaScript和node.js内存泄露的原因和避免方法及Chrome调试工具使用教程
  4. Html5网页中用JavaScript调用本地手机摄像头扫描识别微信二维码、条形码:postMessage跨域https传递扫码结果消息
  5. JavaScript设置对象属性只读不可修改、不可枚举、不可删除:Object.defineProperty
  6. CSS教程:图片使用混合模式和颜色叠加filter滤镜,改变PNG图标颜色
  7. CSS教程:如何设置自动显示隐藏scrollbar滚动条,自定义外观样式/宽度,附demo示例大全
  8. node.js通过Error.prepareStackTrace获取上层调用函数的文件名地址和行数位置
  9. JavaScript判断字符串是否为数字类型:Number.isInteger、isNaN、正则表达式比较
  10. webpack前端项目调试环境安装入门:webpack.config.js禁用UglifyJs只合并JavaScript不压缩混淆代码

 相关阅读
  1. Linux下的tar压缩解压缩命令详解,创建解压目录到.tar.gz包
  2. CentOS注册系统服务,添加自动启动脚本
  3. 用OnceOA旺司在树莓派等arm设备免费搭建私有云版有道云笔记文档管理系统,在线编辑Markdown,同步备份手机照片
  4. Node.JS用纯JavaScript生成图片或滑块式验证码
  5. 树莓派ARM开发板使用TF卡启动和系统安装到EMMC启动,硬盘存储读写速度对比测试
  6. Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
  7. 在Windows平台上用命令行创建tar.gz压缩包和解压
  8. node.js函数如何获取调用者的文件目录路径: 用callsite获取错误堆栈的每一层文件名及路径
  9. 华为鸿蒙操作系统想要取代Android几乎不太可能
  10. 树莓派4对比测试:性能提升3倍启动时间反而变慢?TF卡成最大瓶颈

  开源的 OurJS
OurJS开源博客已经迁移到 OnceOA 平台。

  关注我们
扫一扫即可关注我们:
OnceJS

OnceOA