数码相机的照片经常被保存为带有EXIF“方向”标签的JPEG格式。 为了正确显示,图像需要根据设置的方向进行旋转/镜像,但是浏览器会忽略渲染图像的这些信息。 即使在大型商业Web应用程序中,对EXIF方向的支持也可能是多余的1 。 同样的来源也提供了JPEG可以具有的8个不同方向的很好的总结: 示例图像可在4 。 问题是如何旋转/镜像客户端的图像,使其正确显示,并可以进一步处理,如果有必要? 有JS库可用来parsingEXIF数据,包括方向属性2 。 Flickr注意到parsing大图片时可能出现的性能问题,需要使用webworkers 3 。 控制台工具可以正确地重新定位图像5 。 6解决问题的PHP脚本
我正在寻找JavaScript库和代码,可以在没有本地支持的浏览器上模拟localStorage 。 基本上,我想编写我的网站使用localStorage存储数据,并知道它仍然可以在本地支持它的浏览器上工作。 这意味着一个库会检测是否存在window.localStorage并使用它。 如果它不存在,那么它会通过在window.localStorage命名空间中创build自己的实现来创build某种本地存储的回退方法。 到目前为止,我find了这些解决scheme: 简单的sessionStorage实现。 一个使用cookie的实现(对这个想法不感到兴奋)。 Dojo的dojox.storage ,但这是它自己的东西,不是真正的后备。 我明白,Flash和Silverlight也可以用于本地存储,但没有发现任何使用它们作为标准HTML5 localStorage的后备。 也许Google Gears也有这个function呢? 请分享您find的任何相关的图书馆,资源或代码片段! 我会特别感兴趣的纯JavaScript或基于jQuery的解决scheme,但我猜这是不太可能的。
我试图覆盖网页顶部的一个元素(绘制任意graphics),我已经到了可以将它堆叠在一切元素之上的点,但是这阻止了用户点击任何链接/button/等。 有没有办法让其内容浮动在一切之上(它是半透明的,所以你仍然可以看到后面的内容)并让用户与它下面的图层进行交互? 我发现了很多关于DOM事件模型的信息,但是没有一个能够解决button和其他“本地”控件从来没有得到点击的问题。
我试图从popup窗口访问activeTab DOM内容。 这是我的清单: { "manifest_version": 2, "name": "Test", "description": "Test script", "version": "0.1", "permissions": [ "activeTab", "https://api.domain.com/" ], "background": { "scripts": ["background.js"], "persistent": false }, "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'", "browser_action": { "default_icon": "icon.png", "default_title": "Chrome Extension test", "default_popup": "index.html" } } 我真的很困惑,不pipe是后台脚本(带有persistence:false的事件页面)还是content_scripts都是要走的路。 我已经阅读了所有文档和其他SOpost,对我来说这仍然没有意义。 有人可以解释为什么我可以使用一个在另一个。 这是我一直在尝试的background.js: chrome.extension.onMessage.addListener( function(request, sender, sendResponse) { // LOG THE […]
我的图像看起来像<img ng-src="dynamically inserted url"/> 。 加载单个图像时,我需要应用iScroll refresh()方法,以便使图像可以滚动。 什么是最好的方式知道什么时候图像完全加载运行一些callback?
我想打开一个链接在同一个窗口,并在同一个页面包含链接。 当我尝试使用window.open打开链接时,它将在新的选项卡中打开,而不是在同一个窗口中的同一个选项卡中。
我在Chrome隐身模式下运行Chrome Cast发件人时出错,或者未安装Chrome扩展程序。 Failed to load resource: net::ERR_ADDRESS_UNREACHABLE chrome-extension://boadgeojelhgndaghljhdicfkmllpafd/cast_sender.js Failed to load resource: net::ERR_ADDRESS_UNREACHABLE chrome-extension://dliochdbjfkdbacpmhlcpmleaejidimm/cast_sender.js Failed to load resource: net::ERR_ADDRESS_UNREACHABLE chrome-extension://hfaagokkkhdbgiakmmlclaapfelnkoah/cast_sender.js Failed to load resource: net::ERR_ADDRESS_UNREACHABLE chrome-extension://fmfcbgogabcbclcofgocippekhfcmgfj/cast_sender.js Failed to load resource: net::ERR_ADDRESS_UNREACHABLE chrome-extension://enhhojjnijigcajfphajepfemndkmdlo/cast_sender.js No cast extension found Google投递发件人正试图发送本地“cast_sender.js”的ajax请求。 如果发生这种情况,或者有一个更好的方法来检查是否存在chrome-cast发送者扩展(而不是通过请求ajax请求)? 我相信这些ajax请求是一种询问是否存在扩展名扩展的方法。 我有一个更好的方法来检查是否存在铬扩展扩展?
我发现有些人把JavaScript称为“dynamic的,弱types的”语言,但有些人甚至会说“无types”? 这是真的吗?
是否有可能从JavaScript中的原型方法调用基本方法,如果它被覆盖? MyClass = function(name){ this.name = name; this.do = function() { //do somthing } }; MyClass.prototype.do = function() { if (this.name === 'something') { //do something new } else { //CALL BASE METHOD } };
我想使用JavaScript(可以与jQuery)做一些客户端validation,以检查一个string是否匹配正则expression式: ^([a-z0-9]{5,})$ 理想情况下,这将是一个expression式,返回true或false。 我是一个JavaScript的新手,不match()做我所需要的? 它似乎检查部分string是否匹配正则expression式,而不是整个事情。