html语言中h,H HTML
h 这个 namespace 主要处理跟 渲染、HTML 相关的操作。html与h两者的 namespace 是一致的,一般建议使用h。
主要函数
load
作用: 载入前端 css、js、scss、coffeescript 资源,自动生成对应的 HTML 代码。
注意: 相同的资源,相同的页面,最多只能载入一次,重复调用不会重复载入。
a
作用: 产生 A 标签元素(超级链接),并且根据当前页面的 URL,给予selected等相应的 class name。
参数: title, url, dom_id=None, must_equal=False, class="selected active current"
参数说明:
title: 链接显示的内容
url: 链接的地址
dom_id: 一般不需要特别指定,如果指定了,则是对应的 Dom 的 ID
must_equal: True/False,如果是 True,则当前URL 必须要完全匹配;反之则只要前向匹配则可。
class: 如果当前页面 URL 和参数中的url一致对应,则 A 标签元素增加此 class name
js_view
作用: 可以产生一个链接元素,点击的时候,可以显示图片、在 iFrame 内浏览页面、播放视频。
参数: title, url, group_id=None, view_type='', height=None, width=None, thumbnail=None
参数说明:
title: 显示的文字内容, 也可以是是图片的地址。
url: 链接地址或者图片地址或者视频地址,如果 url 以.mp4结尾,view_type 默认作为video处理
group_id: 在 view_type='image'的时候起作用,表示一个组别,可以实现上一张、下一张
view_type: image、iframe、 video、qrcode、erweima,如果没有特别指定,默认作为iframe处理
thumbnail: 缩略图的 url,如果有指定 thumbnail,但未指定 view_type, 则 view_type 默认作为 image处理
height: 高度, 在 video 类型的时候有效
width: 宽度,在 video 类型的时候有效
auto_a
作用: 是介于js_view 和 a两个函数之间的,如果对应 href 比较适合 js_view 呈现,就会调用 js_view, 反之则调用a.
参数: title, href, a_title=None, class_name='', group_id='', target="", dom_id=None
i18n
作用: 国际化的多语言对应
示例:
// 获得某个 key 的翻译,如果无法匹配,返回 key 本身
+h.i18n('key')
// 设定一个 key 的翻译,未指定语言,则作为默认值
+h.i18n('key', 'I am Key')
// 设定一个 key 的翻译,并指定了语言
+h.i18n('key', '我是 Key', 'zh_cn')
simple_form
作用: 能比较快地生成一个表单(Form)界面。
参数: title, keys, data_obj=None, formats=None, info=None, submit_text=None, button_type="submit"
参数说明:
data_obj: 如果有指定,则 data_obj 内的属性会对应到 keys,进行填充
info: 如果有指定,会呈现出错误信息的红字
button_type: 默认为 submit,点击会触发 POST 请求,也可以设定为button, 这样就不会触发提交,可以自己进一步在前端脚本中处理对应的点击行为。
submit_text: 点击按钮的文本内容
formats: 对 keys 呈现逻辑的补充,一般不需要设定。
keys: 一个list形式,比如[title, content], 这样 Form 就会呈现出两个字段来。content@textarea, 此类的 key 增加了@则表示此字段的表现形式。如果需要设定 placeholder,在反引号包裹内补充即可,比如"content@textarea`hello world`"。
注意: select 是 keys 中一个比较特殊的 key,因为本身不具备 placeholder 的属性,但是需要设定 options,因此这样的语法 keys=["title", "sites@select`site1,site2,site3`"] 可以对应一个 Select 类型的字段(value按次序分别为1,2,3)。
formats的说明
formats 可以具体决定一个字段在 form 中的表现形式,dict 形式,key 意义对应+h.simple_form 中传入的 key 值。根据不同的Dom类型,可设定的属性有不同的对应,一般有以下的值:
type: select, text, list, password, textarea 其中之一
placeholder: 一般 input、textarea 的最终 HTML DOM对应的 placeholder 属性
default: 默认值
options: 仅仅对 select 类型起作用,或者声明了这个属性的,当前视为 select 类型,为一个列表,列表内的元素也是一个(value, text)形式的列表。
这个属性的相对比较复杂,以下为系统默认提供的一个示例:
formats = {
'post_content_type': {
'type': 'select',
'options': [
('markdown', 'Markdown'),
('plain', 'Plain Text with Images'),
],
},
'post_paragraph_indent': {
'placeholder': '0'
},
'posts_per_page': {
'default': 3,
},
'cache_strategy':{
'type': 'select',
'options': [
('fast', 'Fast'),
('balance', 'Balance'),
('no', 'No'),
]
},
}
grid_form
跟 simple_form 比较类似,但是会自动处理排版以及 callback 函数的对应。
todo: 文档待补充...
json_view
作用: 将一个 data 数据,用 JSON 的格式进行呈现。
参数: data, title=None, fields_to_remove=None
参数说明:
data: 数据对象
title: 页面的标题
field_to_remove: 是一个 list 类型的数据,表示 data (如果是一个 dict 类型的话) 中哪些字段在呈现的时候需要被移除。
show
作用: 调用 show (模板)目录下的某个模板文件,一般是在 Markdown 文档中直接调用。
参数: template_path, **kwargs
具体用例请参考 此处
debug_template
当网站内的/template/目录下发生变化时,页面进行自动刷新或者 css 样式内容的自动重新渲染。
一般情况,并不需要调用 +h.debug_template 这个函数,编辑模板的时候,进入网站设置中,将网站的 Debug 模式直接打开,效果也是一样的。
paginator
作用: 将一个Paginator对象转为HTML结构的源码。
参数:
注意: 最终结果是字符串,并不是Paginator对象本身,不要尝试调用Paginator对象上的属性、命令,这会引发错误。
paginator: 如果为None,默认提取当前页面的分页对象
style: simple/min/auto 中一种,默认为 simple
pre_label: 上一页的文字描述 (可为空,有默认值),针对 mini/auto 两种样式有效
next_label: 下一页的文字描述 (可为空,有默认值),针对 mini/auto 两种样式有效
simple 样式
额外接受的参数:
show_page_of: 表示是否显示 Page 1 of 10 的信息,接受 False/True, 默认为 False
效果如图:
auto样式
表现形式: 会计算头尾两页,如果页码数过多,中间会进行自动的省略。
额外接受的参数:
max_count,默认为10,表示可见的页码总数不超过10,可以设定 3-20 之间的数值;
omission_mark, 默认为 ...,表示到最后页面,超过 max_count 后需要进行省略,其表示的字符串
效果如图:
mini
表现形式: 根据当前页码,推算前几个页码,但不特定去计算所有页面的头、尾。
额外接受的参数:
max_count,默认为5,表示可见的页码总数不超过5,可以设定 3-20 之间的数值;
效果如图:
前端类属性&函数
mobile_metas
实际上就是以下 HTML 源代码,以实现移动端的基本兼容
headers
headers = h.mobile_metas + h.seo()
a_color
获得一个颜色(常作为背景色)
seo
必要的keywords & description的描述,主要是针对 SEO 或者其它内容被抓取时用到到的信息。
可接受参数keywords, description, 比如 h.seo(seo_keywords, seo_description)。
如果keywords 未传入,则会按照优先级尝试去匹配 post.metadata.keywords 与 site.configs.keywords ;如果 description 未传入,则也会依次去匹配 post.metadata.description 与 site.configs.description。
注意:
1,在页面中,仅能调用一次 seo 这个函数,后续调用,会直接返回空字符;
2,也要注意代码的上下次序,如果 post 这个变量没有调用之前已经调用了 h.seo,那么 post 本身就不会影响到 h.seo 这个函数的结果了;
3,h.headers 会调用一次 h.seo(),也要注意模板代码本身的次序。
前端类函数
back_to_top
作用: 在页面右下角增加返回到头部的元素
参数:
ajax
作用: 在某个指定的 Dom 上点击后,发送 Ajax 请求,并做进一步的 callback 处理
参数: dom_id, url, method='get', data='', callback_func=''
参数说明:
dom_id: 指定的 Dom ID
url: Ajax 请求的地址
method: get or post
data: 需要发送的内容
callback_func: 请求成功后,回调的函数名
auto_toc
作用: 传入一个文章的 dict 类型的数据对象,自动生成一个 TOC 的代码片段
接受参数:
post: 日志(文章)的数据对象
top: 整数类型,可为空,表示 toc 栏距离顶部的高度(滚动条滚动这个高度之后,将处于固定位置)
fixed_top: 整数类型,可为空,表示 toc 栏处于固定位置时的 top 位置
注意:
auto_toc 能实现滚动与当前toc的自动对应,但前提是已经设定好对应的 css 样式,一般页面的结构不要过于复杂
top 这个参数可以不用传入,如果全局有一个 toc_offset_top 为名的 Javascript 的函数 (本身需返回一个整数值),可以起到动态的作用。
auto_header
作用: 对class=auto_header的元素,如果页面产生滚动的时候,到达一定高度时候自动隐藏与显示。
fast
作用: 应用InstantClick技术,加快页面的预载入速度。
注意: 这可能会造成网站额外的请求与页面浏览。
auto_sidebar
作用: 可以对一个指定的class=sidebar的元素,进行 sidebar 式的布局。
参数: side='left', sidebar_name='sidebar', width=300, default_status="hide"
html语言中h,H HTML相关推荐
- c语言中math的库函数,C语言中math.h库中的常用函数
C语言中math.h库中的常用函数 int abs(int i) 返回整型参数i的绝对值 double cabs(struct complex znum) 返回复数znum的绝对值 double fa ...
- c语言 conio h,c语言中conio.h是什么?
c语言中conio.h是什么? 发布时间:2020-04-29 09:34:37 来源:亿速云 阅读:523 作者:小新 c语言中conio.h是什么?相信有很多人都不太了解,今天小编为了让大家更加了 ...
- c语言中的头文件stdlib.h的作用,c语言中includestdlib.h的意思是什么
c语言中include的意思是什么 发布时间:2020-07-16 09:17:22 来源:亿速云 阅读:1720 作者:Leah 这篇文章将为大家详细讲解有关c语言中include的意思是什么,文章 ...
- c语言中stdbool.h的使用
(1)使用了<stdbool.h>后,可使用true和false来表示真假. (2)在循环语句中进行变量声明是C99中才有的,因此编译时显式指明 gcc -std=c99 prime.c ...
- 一个函数里两个setjmp_C语言中setjmp.h的longjmp()函数
一个函数里两个setjmp We can call this function as an advance version of goto statement but with more dynami ...
- c语言头文件格式图片_c语言中的.h头文件的格式
#ifndef __digital_h__ #define __digital_h__ #ifndef __cplusplus extern "C"{ #endif #ifdef ...
- C语言中conio.h
头文件"conion.h" 是用来清屏的代码.在后面的代码中嵌套'clrscr()'来完成 清屏.清行.向后删行.插行的操作真有些CCED.WPS等编辑软件的风格,就是在你平时的屏 ...
- c语言不用math就算次方,C语言中math.h定义了哪些函数
//1.三角函数 double sin(double); //1.1.正弦 double cos(double); //1.2.余弦 double tan(double); //1. 3.正切 //2 ...
- c语言中fcntl.h函数库,fcntl函数的使用详解
(1)fcntl函数说明 前面的这5个基本函数实现了文件的打开.读写等基本操作,这一节将讨论的是,在文 件已经共享的情况下如何操作,也就是当多个用户共同使用.操作一个文件的情况,这时,Linux 通常 ...
- c语言中window.h函数说明做个记录
1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 ...
最新文章
- F5 network
- springboot中关闭eureka server中已注册服务列表自我保护配置
- 计算机管理磁盘管理,如何打开磁盘管理?
- 商汤科技2020年校园招聘丨以你所AI,创无界未来
- 操作html标签之找到标签(续)
- python交互模式什么意思_Python中的交互模式是什么
- python 二项分布_二项分布的理论基础、应用及Python实践
- SpingBoot 整合 kafka Elk
- 使用多个tomcat如何修改端口号
- 区间DP lightoj 1422
- Android自定义控件之app标题栏的封装
- 从Android转大前端半年,我的一些思考
- git gui怎么拉取项目代码_Gitee码云如何更新项目上的代码?
- DayDayUp:计算机技术与软件专业技术资格证书之《系统集成项目管理工程师》课程讲解之十大知识领域之4辅助—项目沟通管理
- 百度url提交入口 百度网站收录提交入口网址
- 学报格式和论文格式一样吗_工大学报论文格式要求
- [iOS]音视频呼叫时手机震动或者播放来电铃声
- 蚌埠学院计算机操作系统题库,蚌埠学院电子教务登录
- vulnhub靶机_WHO WANTS TO BE KING: 1
- 干货 | 18个 Python 高效编程技巧
热门文章
- 编程实现执行CMD命令-用照片查看器打开图片
- linux mbr修复 diskgen,教你怎么修复MBR (附工具)
- 企业信息化投入中咨询服务_企业信息化咨询问题研究
- hdfs——Attempting to operate on hdfs namenode as root 两种解决方式
- firebug的应用
- 新《电商法》下,时下趋势的社交电商社群电商团购合规运营方案已上线成功!...
- A10:怎么利用容器技术,助力开放银行建设
- OpenCV之图像梯度
- 坚持到底就是成功,坚持到底就是富有,坚持到底就是胜利
- win10关机后自动重启_win10电脑自动关机设置方法