javascript - 缺少 : after property id (jquery)

标签 javascript jquery html

我在 firebug 控制台中收到此错误,但无法找出原因。我的代码如下:

$(document).ready(function(){
    var header = $('h2#chase');
    var headerOffset = header.offset();
    header.css({
        "position" : "absolute",
        "left" : headerOffset.left+"px",
        "top" : headerOffset.top+"px"
    });

    var headerSize = {width: header.width(), height: header.height()};
    var headerBounds = {top: headerOffset.top, right: headerOffset.left + headerSize.width, bottom: headerOffset.top + headerSize.bottom, left: headerOffset.left};
    var windowBounds = {top: 0, right: $(window).width() - headerSize.width, bottom: $(window).height() - headerSize.height, left: 0};
    var maxLeft = $(window).width() - headerSize.width;
    var maxTop = $(window).height() - headerSize.height;

    var margin = 30;

    $(window).mousemove(function(e){
        headerOffset = header.offset();
        headerBounds = {top: headerOffset.top, right: headerOffset.left + headerSize.width, bottom: headerOffset.top + headerSize.height, left: headerOffset.left};
        var sides = whichSides(e.pageX, e.pageY);
        $.each(sides, function(key, value) {
            header.css({
                value.side : value.newValue+"px"
            })
        });
    });

    function whichSides(mouseX, mouseY) {
        var sides = [];
        var sideOffsets = {top: headerBounds.top - mouseY, right: mouseX - headerBounds.right, bottom: mouseY - headerBounds.bottom, left: headerBounds.left - mouseX};
        var newValues = {top: mouseY + margin, right: mouseX - margin, bottom: mouseY - margin, left: mouseX + margin};
        $.each(sideOffsets, function(key, value) {
            if (value < 30 && value >= 0) {
                sides.push({side: key, newValue: newValues[key]});
            }
        });
        return sides;
    }
});

错误 Firebug 正在返回:

    missing : after property id (line 24, col 9)
    value.side : value.newValue+"px"

编辑:抱歉,我似乎发布了我今天早上早些时候写的草稿中的代码,此后我用真正错误的代码更新了它。

最佳答案

在这一点上:

header.css({
    value.side : value.newValue+"px"
})

value.side 不是 左侧的有效结构:

我不确定你想做什么,但它应该更多的是:

header.css({
    side : value.newValue+"px"
})

阅读您的评论后,您可以这样做:

var o = {}

o[value.side] = value.newValue+'px';

header.css(o);

关于javascript - 缺少 : after property id (jquery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11395249/

相关文章:

javascript - 如何使图像在单击时停止/开始跟随光标

javascript - 位置对象 JavaScript

javascript - 非常简单的 jquery 自定义函数抛出错误

javascript - 无法获取输入值并将其附加到 iframe src

javascript - 在计时器上用 JavaScript 替换图像

javascript - 通过 JavaScript 复制没有标题的 HTML 表格?

javascript - 用Jquery替换div参数

javascript - 如何在 jQuery 中获取 $(this) 选中的选项?

java - jQuery timepicker 插件不适用于 struts2-jquery

html - CSS 背景图片将在本地显示,但不会在 gh-pages 上显示,收到 404 错误