Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么jQuery';是否有不一致的回车输出?_Javascript_Jquery - Fatal编程技术网

Javascript 为什么jQuery';是否有不一致的回车输出?

Javascript 为什么jQuery';是否有不一致的回车输出?,javascript,jquery,Javascript,Jquery,下面的例子说明了这个问题: $(“#ex1”)。追加(“\r”)//这一个工作正常 $(“#ex2”)。追加(“\n”)//这也如预期的那样起作用 $(“#ex3”)。追加(“\r\n”)//这也如预期的那样起作用 $(“#ex4”)。追加(“\r”)//这将替换为\r\n $(“#ex5”)。追加(“\r\n”)//这将完全删除\r\n $(“div”)。单击(“click”,function(){ 警报(JSON.stringify(this.innerHTML)); }); 单击下面的

下面的例子说明了这个问题:

$(“#ex1”)。追加(“\r”)//这一个工作正常
$(“#ex2”)。追加(“\n”)//这也如预期的那样起作用
$(“#ex3”)。追加(“\r\n”)//这也如预期的那样起作用
$(“#ex4”)。追加(“\r”)//这将替换为\r\n
$(“#ex5”)。追加(“\r\n”)//这将完全删除\r\n
$(“div”)。单击(“click”,function(){
警报(JSON.stringify(this.innerHTML));
});

单击下面的div以查看结果。
R:
N:
注册护士:
R+El:
RN+El:

这不是jQuery的问题

我认为这是与javascript相关的浏览器问题

(即使用“\r”,其他使用“\n”。我在Chrome btw上进行了测试…)

您可以在警报窗口中看到完全相同的结果。 “\r”被忽略

$("#ex1").append("\r"); //This one works as expected
$("#ex2").append("\n"); //This also works as expected
$("#ex3").append("\r\n"); //This also works as expected
$("#ex4").append("\r <el></el>"); //This replaces \r with \n
$("#ex5").append("\r\n <el></el>"); //This removes \r completely

var text4 = "\r <el></el>";
var text5 = "\r\n <el></el>";

alert(text4);    //check this
alert(text5);    //and this

$("div").on("click", function () {
    alert(JSON.stringify(this.innerHTML));
});
$(“#ex1”)。追加(“\r”)//这一个工作正常
$(“#ex2”)。追加(“\n”)//这也如预期的那样起作用
$(“#ex3”)。追加(“\r\n”)//这也如预期的那样起作用
$(“#ex4”)。追加(“\r”)//这将替换为\r\n
$(“#ex5”)。追加(“\r\n”)//这将完全删除\r\n
var text4=“\r”;
var text5=“\r\n”;
警报(文本4)//检查这个
警报(文本5)//还有这个
$(“div”)。在(“单击”)上,函数(){
警报(JSON.stringify(this.innerHTML));
});

您看到的是浏览器的功能-实际上与jQuery没有任何关系。@Pointy:这似乎不是真的。将最后两个转换为原始DOM调用,添加一个文本节点,然后添加一个元素,
\r
将被保留(在Linux上的Chrome上),但如果您通过jQuery执行此操作,@T.J.Crowder啊,那么jQuery执行的“嗅探”来确定要追加的内容可能与此有关,可能吧。你想达到什么目的?
\r
\n
都是空白字符。jQuery在内部使用多个正则表达式来识别空白和换行符等,并执行类似于
val.replace(rCRLF,“\r\n”)
的操作,以特定方法规范化内容,和
rCRLF=/\r?\n/g
等。如果在不使用
JSON.stringify
的情况下调用
alert
,回车符将被视为空白字符。它还在那里,只是看不见。