Синтаксическая ошибка jQuery - неожиданный токен - PullRequest
0 голосов
/ 09 августа 2011

Я пытаюсь отладить и получаю синтаксическую ошибку. Я не уверен, что происходит с этим. Я пытаюсь получить его там, где, если я нажимаю на объект, который присоединен к "$ color_cell", он помещает atrr ("id") в массив black_colors.

Может ли кто-нибудь помочь мне с этим? Заранее спасибо.

<script src="jquery-1.6.2.js"></script>
<script type="text/javascript">

var ids = [];
var black_colors = [];
var blue_colors = [];
var brown_colors = [];
var gray_colors = [];
var green_colors = [];
var orange_colors = [];
var pink_colors = [];
var purple_colors = [];
var red_colors = [];
var teal_colors = [];
var white_colors = [];
var yellow_colors = [];


$(document).ready(function($) {


    $(".btnColor").click(function(){

        $(".color_cell").click(function(){

            if $(this).attr("id") == "black"{

            black_colors.push($(this).attr("id"));

    }

        });

    });

});

</script>
<br>
<br>
    <button type="button" class="btnColor" id="black">Black</button>&nbsp;
    <button type="button" class="btnColor" id="blue">Blue</button>&nbsp;
    <button type="button" class="btnColor" id="brown">Brown</button>&nbsp;
    <button type="button" class="btnColor" id="gray">Gray</button>&nbsp;
    <button type="button" class="btnColor" id="green">Green</button>&nbsp;
    <button type="button" class="btnColor" id="orange">Orange</button>&nbsp;
    <button type="button" class="btnColor" id="pink">Pink</button>&nbsp;
    <button type="button" class="btnColor" id="purple">Purple</button>&nbsp;
    <button type="button" class="btnColor" id="red">Red</button>&nbsp;
    <button type="button" class="btnColor" id="teal">Teal</button>&nbsp;
    <button type="button" class="btnColor" id="white">White</button>&nbsp;
    <button type="button" class="btnColor" id="yellow">Yellow</button>&nbsp;

Ответы [ 3 ]

3 голосов
/ 09 августа 2011

вместо: if $ (this) .attr ("id") == "black"

if ($(this).attr("id") == "black")
1 голос
/ 09 августа 2011

В вашем коде много ошибок.

<script src="jquery-1.6.2.js"></script>

должно стать:

<script type="text/javascript" src="jquery-1.6.2.js"></script>

и:

$(document).ready(function($) {

должно стать:

$(document).ready(function() {

и:

if $(this).attr("id") == "black"{

должны стать:

if ($(this).attr("id") == "black") {

А также вы вложили два обработчика .click(), что неверно.

так что, наконец, у вас есть:

<script type="text/javascript" src="jquery-1.6.2.js"></script>
<script type="text/javascript">

var ids = [];
var black_colors = [];
var blue_colors = [];
var brown_colors = [];
var gray_colors = [];
var green_colors = [];
var orange_colors = [];
var pink_colors = [];
var purple_colors = [];
var red_colors = [];
var teal_colors = [];
var white_colors = [];
var yellow_colors = [];

$(document).ready(function() {
    $(".color_cell").click(function() {
        // Can't see any color_cell class in your markup
        // so no idea what you want to do if the DOM element with it is clicked
    });

    $(".btnColor").click(function() {
        if ($(this).attr("id") == "black") {
            black_colors.push($(this).attr("id"));
        }
    });
});
</script>
1 голос
/ 09 августа 2011

Я не думаю, что ваш синтаксис javascript совершенно правильный.Попробуйте это:

$(document).ready(function($) {
    $(".btnColor").click(function(){
        $(".color_cell").click(function(){
            if ($(this).attr("id") == "black") {
               black_colors.push($(this).attr("id"));
             }
        });
    });
});
...