我有一个调试器日志,我用JavaScript编写了一个我正在研究的项目.该日志基本上是<aside>HTML5中的标记,仅在需要时显示.我想玩弄能够在屏幕上移动日志的想法,因为它可能会重叠某些事情(这对我的项目来说很好).但是,我似乎无法弄清楚如何使用HTML5正确地拖放标签,以便它可以放置在屏幕上的任何位置(好吧,或在<div>元素内).
在阅读HTML5的拖放支持后,我对它的工作方式有了基本的了解,但是我不知道在允许将div放在任何地方时从哪里开始(它的z-index是一个很高的值,所以正如我所说,重叠很好).
有什么建议?
哦,我想尽可能避免在这个项目中使用外部库.我试图用纯JavaScript/HTML5来做这件事.
我已经意识到这已经被问了好几百次,但是,我似乎无法理解"为什么"JavaScript中的原型是正确的,因为它模仿了类(是的,我知道JavaScript是一种基于原型的语言 - 我'我收集了很多).
像许多其他人一样努力使JavaScript成为我使用的日常语言,我习惯于常规的OOP类风格,因为我在Java中玩过(并且在ActionScript和PHP中使用过类).然而,虽然我认为我理解原型是如何工作的,但我似乎无法理解为什么需要原型.
这是我目前在JavaScript中理解原型的示例脚本:
var Apple = function() {
// An apple?
};
Apple.prototype.color = "red";
Apple.prototype.changeColor = function(new_color) {
this.color = new_color;
};
Apple.prototype.getColor = function() {
alert('color: '+this.color);
};
var apple1 = new Apple();
var apple2 = new Apple();
apple2.changeColor("green");
apple1.getColor();
apple2.getColor();
Run Code Online (Sandbox Code Playgroud)
...我曾经假设原型可能意味着它共享同一个对象,而不是每次只创建一个新对象 - 但是,显然不是这样,因为apple1和apple2都有不同的颜色,仍然(运行后说)脚本).
然后我用更多面向对象的脚本编写了它:
var Apple = function() {
this.color = "red";
this.changeColor = function(new_color) {
this.color = new_color;
};
this.getColor = function() {
alert('color: '+this.color);
};
};
var apple1 = new Apple(); …Run Code Online (Sandbox Code Playgroud) 所以,我真的很想开始一个模仿这种2.5D风格的HTML5/JavaScript项目:http: //superflashbros.net/2009/02/22/blue-rabbits-climate-chaos/
我个人试图远离第三方脚本,只是保持代码的核心纯JavaScript.但是,我对trig的了解不是最好的,那么解决这个观点的最合适的方法是什么呢?我本质上想要一个用2D精灵制作的游戏,但是地平面(也许是建筑物,如在flash游戏中)倾斜以赋予它3D感觉.我不想制作一个"模式7"引擎(即像马里奥赛车这样的SNES游戏),因为我的理解是分段的.
我应该研究哪些建议或资源?