Tag: jquery

POST AJAX请求被拒绝 – CORS?

我在端口5000上的node.js服务器上设置了CORS,如下所示: var app = express(); app.use(cors()); //normal CORS app.options('*', cors()); //preflight app.post('/connect', function(req, res) { console.log("Connection request received !") }); var port = 5000; app.listen(port, function () { console.log('Listening on port '+port); }); 我现在正尝试使用JQuery发送AJAX POST请求,如下所示,在从我的硬盘打开的静态网页中: var xhr = $.post({ url: 'http://localhost:5000/connect', complete: function() { console.log("done !") }, crossDomain: true }); xhr.fail(function(xhr, status, error){ alert(error) }) […]

在Javascript中查询本地值的首选方法是什么?

例如,有一个名为animationComplete的variables(来自第三方库)和一个名为happenAfterAnimation的函数: 一个简单的解决scheme如下所示: while(!animationComplete) { // Do nothing } happenAfterAnimation() 或者像这样一个更复杂的解决scheme: function tryHappenAfterAnimation() { if(animationComplete) { happenAfterAnimation() } else { setTimeout(tryHappenAfterAnimation, 100) } } setTimeout(tryHappenAfterAnimation, 100) 第一个解决scheme可能有一些开销,第二个解决scheme看起来有点脏。 由于future/promise是不是在当前版本的Javascript中可用,它的方式可能有点矫枉过正这里..我只是想知道是否有一个优雅和轻量级的方式来处理这种情况.. 有没有人有更好的方式来处理这个想法? 谢谢!

使用Browserify和jQuery插件

一些简要的背景:我使用的是browserify和browserify-shim(和gulp来构build)来创build一个web应用程序。 在这个问题之前,我require从npm的jQuery,所以我没有问题。 一旦我开始做一些优化,我意识到包括jQuery在内的捆绑是多么的庞大。 所以,现在我从CDN抓取jQuery,并将其放在bundle.js文件之前。 但我有问题宣布jQuery作为一个全球性的,适当shimming我的jQuery插件在browserify和browserify-shim。 当我运行gulpbuild立,我不断得到相同的错误: [gulp] gulp-notify: [Compile Error] module "jquery" not found from "/Volumes/Chetan/Users/cshenoy/Projects/urbanstems-node/app/plugins/jquery.inview.js" browserify-shim看起来并不像jQuery那样是全球化的。 作为参考,我使用了inview插件 。 这里是我的package.json和相关的部分 "browser": { "inview": "./app/plugins/jquery.inview.js" }, "browserify-shim": { "jquery": "global:jQuery", "inview": { "depends": [ "jquery" ] } } 让我知道我还可以包括哪些内容来帮助诊断错误。

Yii2 DropDownList Onchange更改自动完成Widget的“源”属性?

我已经试过这个: yii2依赖的自动填充小部件 但我不知道为什么它不工作。 这里我的脚本的HTML: <?= $form->field($model, 'lbt_holder_type')->dropDownList(['prompt' => '— Select Holder Type —', 'S' => 'Student', 'E' => 'Employee'], ['onChange' => 'JS: var value = (this.value); if(value == "S"){$(#libraryborrowtransaction-name).autoComplete({source: '. $s_data.');} if(value == "E"){$(#libraryborrowtransaction-name).autoComplete({source: '. $e_data.');} '])?> 自动完成: <?= $form->field($model, 'name')->widget(\yii\jui\AutoComplete::classname(), [ 'options' => ['class' => 'form-control', 'placeholder' => 'Enter Name/ID'], 'clientOptions' => [ 'source' […]

有什么办法来计算2个string之间的%匹配

有没有什么办法来计算2个string之间的%匹配? 我有一个情况需要计算2个string之间的匹配,如果有85% 匹配,然后我将结合2个表,我已经写了组合2个表的代码 我的示例string是: var str1 = 'i love javascript'; var str2 = 'i love javascripttt'; var matchPer = match(str1,str2); // result might be 80% , 85%, 90% ,95% etc

定义是没有定义的Javascript节点

我正在尝试使用Node来运行Javascript文件,以将博客更新发布到Tumblr。 到目前为止,在我的main.js文件中,我有这样的: // Tumblr Information var tumblr = require('./vendor/tumblr'); tumblr.request(require('request')); var Blog; var jq = require('./vendor/jquery-1.11.1.min'); var reqq = require('./vendor/require'); var inher = require('./vendor/inheritance'); var grammars = require('./tracery/grammar'); 但是,当我运行节点main.js时收到以下错误 ReferenceError: define is not defined at Object.<anonymous> (B:\Documents\Google Drive\Programming\CMPM 147 Tracery\Tumblr Tracery\js\ tracery\grammar.js:6:1) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at […]

如何获取所有相关的JavaScript到一个HTML元素

有没有办法通过在数组中返回的类名来获取与html元素相关联的所有javascript? 任何build议如何能做到这一点? 有没有任何节点包可以让我做这样的事情? 例如: HTML <div class="click_me">Click Me</div> JS $('.click_me').on('click', function() { alert ('hi') }); 我想要的东西像(客户端或服务器端伪码): function meta() { let js = []; js = getAllJavascriptByClassName('click_me'); console.log(js[0]); } meta()的输出 $('.click_me').on('click', function() { alert ('hi') });

nodejs或envjs – dynamicjquery tmpl

我目前的任务是为特定的DOM生成和提供集中的模板 – 对于这个例子,我们只是说它是一个表单。 基本上我想采取每个表单元素(从标签,input,到div包装),并将其保存为单独的模板 。 从那里我们将有一个用户界面,我们的生产者可以拼凑这些forms。 一旦他们决定如何将他们的表单布局(DOM顺序和结构对于这个项目来说实际上是至关重要的,它不能成为一个纯CSS的解决scheme),我们平台上的一个脚本会保存一个JSON对象,基于模板名称的DOM结构,以后我可以在页面加载时参考。 我想这里的一个理想的解决scheme是发送该JSON对象到节点服务器或使用envjs'build立'这个dom,然后将其分配给一个PHPvariables包含在CodeIgniter视图,因此它可以索引由谷歌。 我知道JQuery本身与envjs工作,我知道有一个节点的JQuery插件 ,但唉,这是我的第一个服务器端JS项目,它恰好是相当重要的。 我可以通过命令行获得envjs在本地机器上的工作,但完成一个简单的任务需要10-30秒。 如果envjs是要走的路,我怎样才能保持它在后台运行,并有脚本引用它? PHPcurl到Tomcat上的envjs servlet也许? 一个警告是我的本地开发人员是WAMP(IT不会让我们有本地unix机器),但我们的testing和生产环境都是LAMP。 我确实有一个我可以testing的个人LAMP服务器,如果这是绝对唯一的方法,但是在个人服务器上编码公司的东西可能会让我受到一些热。 不幸的是,我没有时间研究所有的可能性,并尝试/失败,正如我平时所用的新技术。 想法,指导,代码示例 – 任何可以帮助我决定如何解决这个问题将不胜感激。

使用jsdom和node.js发布表单

我正在使用jsdom,jquery和node.js来抓取网站。 有没有什么办法可以发表一个表单,并使用jsdom得到下一个页面窗口。 这是代码 var httpAgent = require('http-agent'), jsdom = require('jsdom'), request = require('request'); request({uri:'http://www.orbitz.com'}, function(error, response, body){ if(error && response.statusCode != 200) console.log('Error on request'); jsdom.env({ html: body, scripts : [ 'http://code.jquery.com/jquery-1.5.min.js' ] }, function(err, window) { var $ = window.jQuery; $('#airOneWay').attr('checked', true); $('#airRoundTrip').removeAttr('checked'); $('#airOrigin').val('ATL'); $('#airDestination').val('CHI'); // here we need to submit the form $('#airbotForm') […]

将webpack与现有的PHP和JS项目一起使用

我有一个现有的PHP项目与jQuery和引导,不使用任何前端框架。 我正在尝试使用webpack模块打包器来为我的项目资源创build一个入口点,使用节点js包pipe理器来pipe理js依赖关系,运行任务以缩小js css,图像重新大小等等。 并提高加载单个页面所需的浏览器加载时间。 我遇到了webpack的教程,并得到安装它,并安装其开发服务器,但问题是,我不能够了解如何将我所有的当前js脚本和CSS链接在项目中(我有很多用于在项目中提供多个function的jquery和CSS库)使用webpack。 我是否必须以适合webpack的方式来重写所有的JS和CSS文件? 我如何成功迁移? 另外,我无法在webpack dev-server上运行我的当前php应用程序,它是否意味着首先在那里运行? 同时只列出项目的目录。 我创build了一个testingindex.js文件,并使用下面的webpackconfiguration: var path = require('path'); var webpack = require('webpack'); module.exports = { entry: [ './public/js/index.js', 'webpack/hot/dev-server', 'webpack-dev-server/client?http://localhost:8080' ], plugins: [ new webpack.HotModuleReplacementPlugin() ], output: { path: path.join(__dirname, "public/dist/js"), publicPath : "http://localhost:8080/my_proj/public/dist/js", filename: "bundle.js" } }; 我添加bundle.js到我的脚本加载只是为了testing,如下所示,希望应用程序将在webpack开发服务器上运行: <script type="text/javascript" src="public/dist/js/bundle.js"></script> <script type="text/javascript" src="public/js/jquery.min.js"></script> <script type="text/javascript" src="public/js/jquery.migrate.js"></script> […]