为啥onclick=""引号中放置的方法后面有时候加;有时候不加啊
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥onclick=""引号中放置的方法后面有时候加;有时候不加啊相关的知识,希望对你有一定的参考价值。
例如 onclick="history.back();" 和 onclick="history.back()" 就是差一个分号,这个分号什么时候加啊?
javascript是弱语言类型,对语法检查不是很严格。但是很多浏览器对这个比较较真,有的浏览器就必须看到;才认为你是调用了一个方法。所以严格意义上来说你还是以后都给加上。这样是肯定不会有问题的。
参考资料:自己总结
参考技术A 在Javascript语言中,一行就是一条语句,如果你要在一行写多行语句就加封号你的例子里面都是一条语句,那么加不加都无所谓
反正你记住在javascript中换行和封号的效果是一样的就行了 参考技术B 如果只调用一个函数加不加无所谓
调用两个以上的中间就要加分号隔开
最后一个函数末尾 可以加也可以不加 应该是这样的 恩 。。。 参考技术C 可以加也可以不加, JavaScript是个非常不规范的语言..所以不是很好学。。 参考技术D 同时调用两个以上的方法时,用“;”间隔
为啥 Xaringan 幻灯片中没有出现智能引号和破折号?
【中文标题】为啥 Xaringan 幻灯片中没有出现智能引号和破折号?【英文标题】:Why are smart quotes and em-dashes not appearing in Xaringan slides?为什么 Xaringan 幻灯片中没有出现智能引号和破折号? 【发布时间】:2020-07-10 08:04:41 【问题描述】:问题
根据文档,Xaringan 应该
将普通引号" "
转换为智能引号“ ”,并且
将 3 个连字符“---
”的序列变成一个破折号“-”
我遇到的问题是,这些转换仅发生在 yaml 元数据中的字符串(出现在标题幻灯片中),但不会发生在普通幻灯片中的文本。
示例
文件minimal.Rmd
包含以下代码:
---
title: "\"It works, doesn't it?\" --- this is the title slide"
subtitle: "Smart quotes and em dash work in yaml"
output:
xaringan::moon_reader
---
# This is a normal slide
It works in the slides too, doesn't it? --- "I hope so", he said.
No, it doesn't.
编织后,我在minimal.html
得到以下幻灯片:
标题幻灯片(注意智能引号和 em-dash):
第二张幻灯片(难看的引号和 3 个连字符):
想法
我很确定 Xaringan 确实不使用 Pandoc 来生成 html。如果过程中使用了Pandoc,默认会美化引号。
我尝试在 yaml 元数据中使用smart: true
,如RMarkdown book 所示,但没有效果。
查看moon_reader
function 的代码,我看到它调用rmarkdown::html_document
来生成html。
这个open issue in the RMarkdown
Github repository 讨论了smart: true
选项和对Pandoc 的调用中的等效选项。问题作者建议放弃 yaml 选项,让 Pandoc 来美化引号等。
但是 Xaringan 不使用 Pandoc,所以这可能是相关的吗?
我的设置
R version 3.6.3 (2020-02-29)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.4 LTS
xaringan_0.15
knitr_1.28
rmarkdown_2.1
提前感谢您的帮助。
【问题讨论】:
你是对的,对于 xaringan 幻灯片,Markdown 是通过 web 浏览器中的 remark.js 呈现的,而不是 Pandoc。 谢谢@YihuiXie。我刚刚意识到调用 pandoc 只生成标题幻灯片;这就是标题幻灯片有智能引号的原因。因此,是否需要注意美化其他幻灯片中的引号和破折号? 完全正确。 【参考方案1】:解决方案链接
https://github.com/fnaufel/smartify
详情
毕竟,xaringan 和 remarkjs 都不负责美化引号和破折号。
我四处寻找 Javascript 解决方案来解决我的问题,但最终决定实现我自己的。在in_header.html
和after_body.html
中添加几行代码后,您可以加载并运行我的 Javascript hack 来智能化幻灯片中的引号和破折号。无需安装任何东西。
更多详情请访问https://github.com/fnaufel/smartify。
我希望这对其他人有用。
再次感谢@YihuiXie 的cmets。
【讨论】:
这对我很有帮助,因为前几天我还在为这种行为摸不着头脑。我一定会看看你的 GitHub 存储库。以上是关于为啥onclick=""引号中放置的方法后面有时候加;有时候不加啊的主要内容,如果未能解决你的问题,请参考以下文章
javascript 为啥按钮的onclick事件不触发 按了没反应
onclick="return confirm(' ')" 是啥意思为啥要加return?