写了一个头部导航栏的html
想在多个html页面中引用,请问怎么操作?
网上找了用<iframe>标签 实际效果并不好 , 导航栏中按钮下拉菜单无法完全显示
请问大牛们平时开发中怎么处理这个的
如图 :
写了一个头部导航栏的html
想在多个html页面中引用,请问怎么操作?
网上找了用<iframe>标签 实际效果并不好 , 导航栏中按钮下拉菜单无法完全显示
请问大牛们平时开发中怎么处理这个的
如图 :
1、可以用构建工具拼接,例如gulp, fis,
我之前用过gulp,大概是这样的
var headerfooter = require('gulp-headerfooter');
gulp.task("html", function() {
return gulp.src("src/template/*.html")
.pipe(headerfooter.header('src/headerfooter/header.html'))
.pipe(headerfooter.footer('src/headerfooter/footer.html'))
.pipe(gulp.dest("templates/purchase"))
})
更详细的可以去我的github上看一下
2、用后台模板来拼接,例如php,django等
3、可以用一些前端模板来做,例如我用的就是handlebars,你先用handlebars写好公共部分,然后再在js里用Handlebars.compile插入进来
如果你不想在页面加载完后再用js插入的话,建议使用前两者
你可以用shtml include的,不过一般都是在程序语言组装好的,而且每个语言都有各自的叫法,不过都是一个意思,
比如aspx就是用户控件啊
还有一种就是用ajax加载,不过这个不合常理,只不过能实现而已。
比如把头部菜单栏的HTML当作字符串放在一个单独的js文件里,
样式独立一个文件,js动画(如果有的话一个独立的文件) 用的时候去拿来把HTML插入到页面,然后该用样式用样式,该用js用js就好了。
额,上面有人说过了
楼主应该是想复用吧
1.可以用模板引擎,比如arttemplate,上手容易,功能简单,但是css样式,还有js你要再引用一次,关键他可以定义模板变量,可以改变你原来的一些内容
2.vue和react 都有组件功能<template>,其实用过这两个框架后,你这个问题就迎刃而解了
3.node.js搭配nunjucks也不错,node应该属于后端思想编写页面,处理你这个问题很简单
这个嘛,方案多多,只要愿意尝试,在这里推荐使用 node,毕竟它也是目前一大趋势,上手比 react 等主流 js 框架都简单,结合 ejs 模板引擎,轻松解决问题,附点代码
app.engine('.html', ejs.__express);
app.set('view engine','html');
要是觉得这个学习成本有点大,还可以使用客户端路由来实现,详情请戳https://github.com/flatiron/d...
6 回答5.4k 阅读✓ 已解决
9 回答9.6k 阅读
5 回答3.8k 阅读✓ 已解决
5 回答8.1k 阅读✓ 已解决
4 回答8.1k 阅读✓ 已解决
7 回答10.2k 阅读
5 回答7.8k 阅读
可以使用
html
的import
这个功能通过声明
<link rel="import">
来在页面中包含一个导入具体可以看教程
可以向下面这样使用
warning.html
导入