带有 Knockout 的 jsFiddle 适用于 IE 11 而不是 Chrome

Posted

技术标签:

【中文标题】带有 Knockout 的 jsFiddle 适用于 IE 11 而不是 Chrome【英文标题】:jsFiddle with Knockout works in IE 11 not in Chrome 【发布时间】:2016-03-24 14:29:58 【问题描述】:

这是示例 Hello World 小提琴的精确副本。我只是将它粘贴到我自己的小提琴中并添加了对http://knockoutjs.com/downloads/knockout-3.2.0.js 的引用。它适用于 IE 11,但不适用于 Chrome。它似乎无法解决淘汰赛参考。是否有一两个设置是 Chrome 的特殊设置?

// 这是我的数据模型 var ViewModel = function(first, last) this.firstName = ko.observable(first); this.lastName = ko.observable(last);

this.fullName = ko.computed(function() 
    // Knockout tracks dependencies automatically. It knows that fullName depends on firstName and lastName, because these get called

在评估 fullName 时。 返回 this.firstName() + " " + this.lastName(); , 这); ; ko.applyBindings(new ViewModel("Planet", "Earth")); // 这使得 Knockout 开始工作

https://jsfiddle.net/KellyWCline/rwL4rng9/2/

【问题讨论】:

你得到答案了吗? 【参考方案1】:

这只是一个安全问题:出于安全原因,当您在 HTTPS 页面内时,Chrome 会拒绝来自 HTTP URL 的脚本。包括来自HTTPS URL(如https://cdnjs.com/libraries/knockout/3.2.0)的敲除,它将开始工作。

如果您查看过 Chrome 的控制台,您会看到此错误:

混合内容:“https://fiddle.jshell.net/KellyWCline/rwL4rng9/2/show/”处的页面通过 HTTPS 加载,但请求了不安全的脚本“http://knockoutjs.com/downloads/knockout-3.2.0.js”。此请求已被阻止;内容必须通过 HTTPS 提供。

【讨论】:

感谢您的链接。我可以分配它,当我点击它时,它会转到 cdnjs 页面。但是,当我运行 jsfiddle(更新为 /3)时,它仍然返回两个错误:第一个是索引文件第 1 行的 Unexpected token

以上是关于带有 Knockout 的 jsFiddle 适用于 IE 11 而不是 Chrome的主要内容,如果未能解决你的问题,请参考以下文章

Knockout js表编辑列获取onkeyup / Onchange最新值。 [小提琴](https://jsfiddle.net/chiks/975ncawv/521/)

Knockout Js模板不显示数据

带有 knockout.js 和 ORM 的 TypeScript

选择了 Knockout.js 下拉绑定

如何使用 knockout.js 订阅变量状态更改

带有 require.js 的 Knockout.js 映射插件