草庐IT

javascript - 如何设置跨源 header 以允许数据 URL?

我有一个JavaScript脚本,它接受一个SVG字符串并尝试将它放在Canvas上(对其进行栅格化)。这在Chrome和Firefox中运行良好,但Safari会抛出错误:varimg=newImage();img.onload(function(){context.drawImage(img,0,0);exportImage.src=canvas.toDataURL('image/png');});img.src="data:image/svg+xml;utf8,...";以这种方式完成后,Safari会在toDataURL()调用中抛出错误:SecurityError:DOMEx

javascript - 在 AppBrowser 中以编程方式更改 selectMenu 选项

我使用javascriptwindow.open()打开一个窗口打开的窗口有以下代码:jQuery(document).ready(function(){jQuery("#lang").change(function(){varlname=jQuery(this).val().split("-");window.location='index.php?lang='+lname[0];alert(lname[0]);alert('lang'+lang);});现在这段代码会在“lang”选择菜单发生变化时触发。我使用window.open以编程方式打开窗口,并设法使用Window.exe

javascript - 如何将计数器值显示到输出中以开始倒计时

我正在构建一个计数器,但遇到了一些问题。我有一个计数器字段,其中发生递增和递减(默认情况下为5分钟)。当按下“开始”按钮时,最终计数器的数字应设置为输出字段中的计时器。这是我的解决方案:;(function(){varoutput=document.querySelector('#output'),btn=document.querySelector('button'),min=5,sec=min*60,timer;setCount(min);functionsetCount(n){varc=document.querySelector('#counter'),increment=c.

javascript - 使用 Jasmine 测试以 uibModal 和 lodash 作为依赖项的服务

这是我第一次使用Jasmine,我已经测试了我的第一个工厂没有问题。但是现在,我想测试这个服务:angular.module('Questions',[]).service('QuestionsService',function($uibModal,$log,_){...}$uibModal来自UIBootstrap(参见here),_是Lodash。到目前为止,我的Jasmine测试是:describe('Service:QuestionsService',function(){varQuestionsService;beforeEach(inject(function(_Quest

javascript - 强制 Youtube 嵌入以高清播放(2016 版)

好吧,这个问题之前已经被问过很多次了——但是Youtube似乎每隔一天就改变一次。我找不到强制Youtube嵌入从头开始播放高清源的方法。切换到高清总是在5-10秒后发生。(不再)有效的方法:将&hd=1参数添加到iframesrc将&vd=hd720或&vd=hd1080参数添加到iframesrc。此处描述:Forceyoutubeembedtostartin720p在html嵌入代码中将iframe尺寸更改为width="1280"heigh="720",然后使用CSS将iframe向下/向上缩放到父div。此处描述:http://thenewcode.com/717/Force

javascript - 我怎样才能让这个按钮在向下滚动时被点击以无限滚动?

这里的按钮从数据库加载数据。工作良好。LoadMorePosts如何让这个按钮在向下滚动到页面底部时自动被点击。简直就是无限卷轴。我应该使用窗口滚动功能吗?如果是,那么如何在这段代码中做到这一点。我尝试将ajax代码粘贴到此函数中,但没有用。编辑:1.当我将Ajax放入滚动函数时,它在getmore.php中显示mysql错误。2.如果我将带有点击功能的按钮类放在滚动功能中,那么它会触发得太快,以至于多次加载相同的帖子。$(document).scroll(function(){if($(window).scrollTop()+$(window).height()>=$(documen

javascript - 我应该多次运行 Google Closure Compiler 以进一步优化我的代码吗?

我尝试将以下JavaScript代码放入ClosureCompilerwebinterface在高级优化模式下:functionf(some_object){if(some_object.foo==1){console.log(some_object.bar);}else{alert(some_object.bar);}}varmy_object={foo:1,bar:2};f(my_object);它生成了以下编译代码:vara={b:1,a:2};1==a.b?console.log(a.a):alert(a.a);但是当我把编译后的代码backintotheClosureComp

javascript - 以正确的方式发送 Action

请检查编辑我正在尝试在我的应用中实现传奇。现在我正在以一种非常糟糕的方式获取Prop。我的应用程序主要包含来自其他来源的轮询数据。目前,我的应用程序是这样工作的:我有容器,其中有mapStateToProps、mapDispatchToProps。constmapStateToProps=state=>{return{someState:state.someReducer.someReducerAction,};};constmapDispatchToProps=(dispatch)=>{returnbindActionCreators({someAction,someOtherAct

javascript - 重建以 JSON 序列化的对象

在我的网络应用程序中,我使用JSON.stringify()asdescribedhere序列化存储对象.这太棒了,我可以轻松地从JSON字符串重新创建对象,但我丢失了所有对象的方法。有没有一种简单的方法可以将这些方法添加回我忽略的对象-可能涉及原型(prototype)制作,这是我不太熟悉的东西?或者这只是我自己创建一个复杂的函数来执行此操作的情况?编辑:理想情况下,我正在寻找类似的东西:Object.inheritMethods(AnotherObject); 最佳答案 调用JSON.parse后获得对象后,您有很多选择。这里有

javascript - 我可以以平台中立的方式查询无 URL 栏移动 Safari 窗口高度吗?

我正在编写一个类似于您在iPhone应用程序商店中获得的横向滚动文本阅读器小部件,其中应用程序的屏幕截图面板是嵌入在主垂直滚动面板中的不同的水平滚动面板。在所有版本(包括全分辨率键盘/鼠标计算机样式)中,面板占据容器宽度的100%,因此它就像横跨页面的水平条纹。在小分辨率触摸界面版本中,即对于智能手机,我希望它也调整大小为窗口的整个高度,以便当您垂直滚动到它时,它可以占据整个屏幕。iPhone使这变得棘手,因为$(window).height()或您想要查询它的方式似乎取决于URL栏是否可见。如果不对代码进行特殊封装以了解它是否在iPhone上,或者添加hack来滚动窗口以关闭URL栏