Javascript 额外单报价-Can';我无法摆脱它
对于下面的代码(使用JavaScript/jQuery),我在我的站点上控制一个幻灯片放映/预览滑块类型的小部件。它很好用。我们有小的指示框,用来突出显示您所处的可用幻灯片。他们也工作。但出于某种原因,它们之间只出现了一个引用。我可以追溯到我在下面的caps中评论的那一行。您看到的最后一个引用似乎是导致它的原因,但当我删除它时,它破坏了代码。为什么需要这个单一的报价?我不知道它和什么匹配Javascript 额外单报价-Can';我无法摆脱它,javascript,jquery,Javascript,Jquery,对于下面的代码(使用JavaScript/jQuery),我在我的站点上控制一个幻灯片放映/预览滑块类型的小部件。它很好用。我们有小的指示框,用来突出显示您所处的可用幻灯片。他们也工作。但出于某种原因,它们之间只出现了一个引用。我可以追溯到我在下面的caps中评论的那一行。您看到的最后一个引用似乎是导致它的原因,但当我删除它时,它破坏了代码。为什么需要这个单一的报价?我不知道它和什么匹配 for(var i = -1; i < numberOfSlides; i++) {
for(var i = -1; i < numberOfSlides; i++)
{
$('#locationBar').append("<span class='locator' id='locator_" + i + "'><a></a></span>'");
//THE LAST SINGLE QUOTE HERE IS WHAT IS CAUSING THE QUOTES BETWEEN THE SLIDE INDICATORS. GETTING RID OF IT BREAKS IT THOUGH. INVESTIGATE.
if(i < 0)
{
$('#locator_' + i).css('visibility','hidden');
continue;
}
$('#locator_' + i).bind('click',function(){window.location=$('#link_' + currentPosition).attr('href');});
$('#locator_' + i).hover(function(){
var newPosition = 0;
for(var j = 0; j < numberOfSlides; j++)
{
if($(this).attr('id') == "locator_" + j)
{
newPosition = j;
}
}
if(currentPosition==newPosition)
return;
jump(currentPosition,newPosition);
currentPosition=newPosition;
clearTimeout(delayTimer);
delayScroll();
});
}
for(变量i=-1;i
已编辑
在同一句话中混用单引号和双引号可能会引起问题
$('#locationBar').append('<span class="locator" id="locator_' + i + '"><a></a></span>');
$('#locationBar')。附加('');
虽然user1277499的答案也应该解决这个问题,但它不起作用?只需转义字符串即可。
你可以得到额外的报价。
你这一行的结尾是
“'>”
所以你得到了双引号中的引号。转义示例:
$('#locationBar')。附加('');
.append(“”)
应为.append(“”)代码>如果“中断”了它,定义中断的含义。考虑设置一个jsFoDel.删除它不会破坏我的代码。您的问题可能在其他地方?@rar:当您删除该单引号时,您的文本编辑器或ide是否会弄乱语法突出显示?我将不得不查看代码中的其他地方……但似乎有些奇怪。@jlaceda我已尝试检查它是否会以任何不寻常的方式更改突出显示。这肯定有另一个原因。最后一个“
是成对的。您可以在最后一个“
,不破坏密码。是的,我知道。关键是你们告诉OP要做的事情和目前正在做的完全一样。不幸的是,这也不起作用。我必须翻阅整个文档,找出这个奇怪的配对是在哪里发生的。我打错了。正确的代码是:$('#locationBar')。追加('');:我刚刚测试了这个,我的旧版本不起作用。很抱歉没有测试我的答案,但这行新词确实有效。我在定位器后面添加了一个转义引号。这就是缺陷所在。
"'><a></a></span>'"