逃离这些字符的目的是什么?[来自Javascript和JQuery书]
What is the purpose of escaping these characters? [From Javascript & JQuery book]
摘自Jon Duckett的《JavaScript和jQuery》一书中的"事件"一章。
这是代码:
var msg = '<div class='"header'"><a id='"close'" href="#">close X</a></div>';
msg += '<div><h2>System Maintenance</h2>';
msg += 'Our servers are being updated between 3 and 4 a.m. ';
msg += 'During this time, there may be minor disruptions to service.</div>';
var elNote = document.createElement('div');
elNote.setAttribute('id', 'note');
elNote.innerHTML = msg;
document.body.appendChild(elNote);
function dismissNote() {
document.body.removeChild(elNote);
}
var elClose = document.getElementById('close');
elClose.addEventListener('click', dismissNote, false);
我只是对开头感兴趣。为什么'"header'"
和'"close'"
被转义,而href="#"
没有?我在没有转义的情况下运行了代码,它仍然有效。
这个想法是教你使用转义引号,因为如果你写代码:
var msg = "<div class='"header'"><a id='"close'" href="'#">close X</a></div>";
这应该有效,但如果引号没有转义,它就不起作用。单引号表示里面的所有内容都是一个精确的引号,即引号(")被解释为一个字符串,而不是一个新字符串的开始(或结束)
此代码不起作用:
var msg = "<div class="header"><a id="close" href="#">close X</a></div>";
相关文章:
- 正在删除'<以及那些>'来自javascript中的字符串
- 逃离这些字符的目的是什么?[来自Javascript和JQuery书]
- 验证来自 javascript 数组的文本字段输入
- JSON 嵌套 Ul 来自 Javascript 中的单维或多维 json 对象
- 等待来自Javascript模态的“返回值”
- 来自 JavaScript 中数组的值的总和
- 在来自Javascript中实时预览的文本中渲染Markdown
- 来自 JavaScript 循环的意外结果
- 如何在jsp文件的span标记上呈现来自JavaScript的html代码
- 触发CSS转换,使用来自Javascript的样式,从内部指令完成回调
- Chrome扩展/来自Javascript值的输出
- 获取所有用户's的联系人列表(包括电话号码)来自javascript中的谷歌登录
- 设置来自 javascript 的背景图像不起作用
- 来自javascript的的值,如何将它们放在html5中的占位符中
- Localhost 拒绝来自 Javascript 的连接
- 用来自 Javascript 的错误填充 JSP 中的错误字段
- 使用来自 JavaScript 的数据值创建 DOM 元素
- Ajax 发送,我能知道用户是否“来自”javascript吗?
- 来自 JavaScript 对象的值返回 null
- 来自 JavaScript 的 JSON 对象