Tag: JavaScript

用jQuery拖放防止点击事件

我有一个与jQuery draggabe页面上的元素。 这些元素有点击事件导航到另一个页面(例如普通链接)。 什么是最好的方式来防止点击放弃这样的元素,同时允许点击不拖放状态? 我有这种可sorting的元素的问题,但认为有一般的拖放解决scheme是很好的。 我已经为自己解决了这个问题。 之后发现Scriptaculous也存在相同的解决scheme,但也许有人有更好的方法来实现这一点。

Javascriptstring是不是一个对象?

这不是一个笑话的设置,我真的问。 道格拉斯·克罗克福德(Douglas Crockford)喜欢说在JavaScript原型面向对象的语言中,不需要new 。 他解释说, new只是为了让人们从基于类的(即“ 古典 ”)面向对象编程语言中获得某种程度的舒适: JavaScript,我们几乎没有new雅 JavaScript是一种原型语言,但它有一个new运算符,试图使它看起来有点像一种古典语言。 这往往混淆程序员,导致一些有问题的编程模式。 你永远不需要在JavaScript中使用new Object() 。 使用对象文字{}来代替。 好的: new不好 {}很好 但是, 维奥托·德·阿劳霍 ( VítorDeAraújo)的评论者指出,两者并不相同 。 他举例说明一个string不像一个object : 一个string对象和一个string值不是一回事: js> p = "Foo" Foo js> p.weight = 42 42 js> p.weight // Returns undefined js> q = new String("Foo") Foo js> q.weight = 42 42 js> q.weight 42 […]

使用来自Ajax请求数据URI的原始图像数据

我正在尝试使用Ajax和数据URI的组合来加载JPEG图像,并使用一个HTTP请求来提取其EXIF数据。 我正在修改一个库( https://github.com/kennydude/photosphere )来做到这一点; 目前这个库使用两个HTTP请求来设置图像的来源并获取EXIF数据。 获得EXIF的作品,没有问题。 但是,我有困难使用来自ajax请求的原始数据作为图像的来源。 源代码的技术小testing: <!DOCTYPE html> <html> <head> <script type='text/javascript'> function init() { // own ajax library – using it to request a test jpg image new Ajax().sendRequest ( "http://img.dovov.comphotos/badger.jpg", { method : "GET", callback: function(xmlHTTP) { var encoded = btoa (unescape(encodeURIComponent(xmlHTTP.responseText))); var dataURL="data:image/jpeg;base64,"+encoded; document.getElementById("image").src = dataURL; } } ); } […]

访问具有空格的JSON对象键

我有以下json对象: { "id": "109", "No. of interfaces": "4" } 以下几行工作正常: alert(obj.id); alert(obj["id"]); 但是如果键有空格,那么我不能访问它们的值,例如 alert(obj."No. of interfaces"); //Syntax error alert(obj["No. of interfaces"]); //Return 'undefined' 我如何访问其键名有空格的值? 这甚至有可能吗?

在JavaScript中查看所有超时/间隔?

我正在编写一个利用JavaScript超时和间隔来更新页面的应用程序。 有没有办法看到有多less间隔设置? 我想确保我不会意外地通过设置数百个间隔来杀死浏览器。 这甚至是一个问题?

如何检测一个选项卡的重点或不使用JavaScript的Chrome?

我需要知道用户目前是否在Google Chrome浏览器中查看标签。 我试图使用绑定到窗口的事件模糊和焦点,但只有模糊似乎正常工作。 window.addEventListener('focus', function() { document.title = 'focused'; }); window.addEventListener('blur', function() { document.title = 'not focused'; }); 焦点事件有时候很奇怪。 如果我切换到另一个选项卡并返回,则焦点事件将不会激活。 但是,如果我点击地址栏,然后返回页面,它会。 或者,如果我切换到另一个程序,然后回到Chrome,它将激活,如果选项卡当前集中。

试图加载angular度不止一次

我有一个yeoman脚手架的应用程序(angular度的fullstack发电机)。 grunt serve工作正常,但grunt build生成产生一个分配locking内存,最有可能是因为angular度循环引用。 我升级到1.2.15 。 我得到的错误是: WARNING: Tried to Load Angular More Than Once 在升级之前,错误是: Error: 10 $digest() iterations reached. Aborting! debugging非常困难,因为只有在编译/缩小之后才会发生。 我所有的模块都是angular度的数组格式,所以缩小DI不应该是一个问题,但它是。 没有一个脚本可以导致这个问题。 唯一的办法就是如果我不用我的app.js文件初始化。 我的app.js文件在下面。 有什么事情想到? 'use strict'; angular.module('myApp', [ 'ngCookies', 'ngResource', 'ngSanitize', 'ngRoute', 'ngTagsInput', 'ui.bootstrap', 'google-maps', 'firebase' ]); angular.module('myApp').config(['$routeProvider', function ($routeProvider) { $routeProvider .when('/', { templateUrl: 'views/listing.html', controller: 'ListingCtrl' }) .otherwise({ redirectTo: […]

更新input的值而不会丢失光标位置

可能重复: 停止光标跳转到javascriptreplaceinput字段的结尾 我想要强制文本框的值是小写,使用JavaScript。 我已经尝试了下面的代码,但是每次按下某个键时,光标就会跳转到input的末尾。 我怎样才能避免这一点? $("#beLowerCase").keyup(function(){ $(this).val( $(this).val().toLowerCase() ); });

检查一个string是否是一个date值

什么是一个简单的方法来检查一个值是否是一个有效的date,允许任何已知的date格式。 例如,我的值为10-11-2009 / 10/11/2009 / 2009-11-10T07:00:00+0000 ,应该全部被识别为date值,值10-11-2009 ,被确认为date值。 什么是最简单的方法来检查,如果这是可能的? 因为时间戳也被允许。

select5个随机元素

我怎样才能select前5个随机元素 <ul> <li>First</li> <li>Second</li> <li>Third</li> … <li>N</li> </ul> 我正在使用这个插件 : alert($("li:random").text()); 但它需要所有的随机元素。 我只想要第一个5。 有没有另一种方法来做同样的事情?