意外的标记 }

时间:2015-06-07 02:23:56

标签: javascript html css

我正在尝试使用此代码

定位我网页上的某个地方
<div id="mover" onclick="moveTo(".main", 3);">erer</div>

那就是我的按钮^^

这是我的功能vv

this.moveTo = function(el5, page_index) {

if (typeof el5 == "string") el5 = document.querySelector(el5);

    var current = document.querySelector(settings.sectionContainer + ".active"),
        next = document.querySelector(settings.sectionContainer + "[data-index='" + (page_index) + "']");

    if(next) {
      var next_index = next.dataset.index;
        _removeClass(current, "active");
        _addClass(next, "active");
        _removeClass(document.querySelector(".onepage-pagination li a" + ".active"), "active");
        _addClass(document.querySelector(".onepage-pagination li a" + "[data-index='" + (page_index) + "']"), "active");

        body.className = body.className.replace(/\bviewing-page-\d.*?\b/g, '');
        _addClass(body, "viewing-page-"+ next_index);

        pos = ((page_index - 1) * 100) * -1;

        if (history.replaceState && settings.updateURL == true) {
            var href = window.location.href.substr(0,window.location.href.indexOf('#')) + "#" + (parseInt(page_index) - 1);
            history.pushState( {}, document.title, href );
        }
        _transformPage(el5, settings, pos, page_index, next);
    }
}

我保持收到此错误,&#39;未捕获的语法错误:意外令牌}&#39; 并突出显示以下代码,我找不到任何错误

<div id="mover" onclick="moveTo(".main", 3);">erer</div>
<div class="container" style="height:70px">

2 个答案:

答案 0 :(得分:5)

更改函数内的双引号
<div id="mover" onclick="moveTo(".main", 3);">erer</div>

单引号

<div id="mover" onclick="moveTo('.main', 3);">erer</div>

函数中的双引号与双引号冲突,双引号表示onclick属性的范围。

<强>建议

由于双引号通常在HTML中使用,因此我们应该在大多数情况下使用单引号 字符串,这样两者都不会相互冲突。

答案 1 :(得分:1)

更改您的onclick,以便内部引号为单引号(而不是双引号)

onclick="moveTo('.main', 3);"

你的第二个双引号是关闭字符串所以你基本上有以下......

onclick="moveTo("  .main  ", 3);"

并且解析器不知道如何在引号之间处理.main