gpt4 book ai didi

javascript - 如何调整 JSFiddle 中的代码以在浏览器中工作?

转载 作者:行者123 更新时间:2023-12-01 02:54:07 24 4
gpt4 key购买 nike

我修改了现有的 JSFiddle 并 fork 了它。我正在尝试将此代码转换为 MVC 应用程序中的 .cshtml。我读过与此类似的问题,这表明问题的发生是因为人们没有使用 Onload 或 $document.ready()。我不认为我的情况是这样。

我的文档的标题如下所示:

    <link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/start/jquery-ui.css" />
<link rel="stylesheet" href="~/CSS/slider.css" />

<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
@*<script src="http://ajax.microsoft.com/ajax/jquery.ui/1.8.5/jquery-ui.min.js"></script>*@

CSS 是一个外部文件,如下所示:

.slide {
margin-top: 20px;
margin-left: 20px;
width: 400px;
background: red;
}
.slide-back {
position:absolute;
height:100%;
}

$document.ready() 的 Javascript 代码如下。

    <script>
$(document).ready(function () {


var doUpdate = function (event, ui) {
alert('doUpdate1'); //This fires.

$('#slide1 .slide-back').remove();
$($('#slide1 a').get().reverse()).each(function (i) {
var bg = '#fff';
if (i == 1) {
bg = '#00f';
} else if (i == 2) {
bg = '#0f0';
} else if (i == 3) {
bg = '#f00';
} else if (i == 4) {
bg = '#0ff';
}

$('#slide1').append($('<div></div>').addClass('slide-back').width($(this).offset().left - 5).css('background', bg));

});
};

$('#slide1').slider({
slide: doUpdate,
change: doUpdate,
min: 0,
max: 1000,
values: [200, 500, 800]
});

doUpdate();
});
</script>

我尝试将此代码放入页面的头部和正文部分。每次加载页面时,都会触发警报,但是当滚动条显示时,它是正常的灰色, slider 上只有一个旋钮。在 JSFiddle 中,彩色 slider 上有三个旋钮。

我想我可能缺少对 JQueryUI 的引用,所以我将其添加到我的头脑中。

<script src="http://ajax.microsoft.com/ajax/jquery.ui/1.8.5/jquery-ui.min.js"></script>

这只会让事情变得更糟。当我在那里时,我在控制台中看到一个空白页面,没有错误。我不知道我还需要什么。谁能告诉我哪里出错了?

JSFiddle 可以找到 Here .

最佳答案

JSFiddle 没有什么特别的;如果您没有得到相同的结果,则意味着有些东西不同。这通常是由于各个插件的不同版本之间不兼容造成的。您可以通过检查 F12 Developer Tools 的“网络”选项卡来了解他们正在使用哪些特定版本的插件。

例如,JSFiddle 使用 jQuery 1.4.4 版本:

http://code.jquery.com/jquery-1.4.4.min.js

如果您使用 1.11.3(除了加载 jQuery Mobile 1.4.5):

https://code.jquery.com/jquery-1.11.3.min.js
https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js

JSFiddle 确实也使用 jQuery UI
(这是 1.8.5,与您的版本相同,尽管来源不同):

http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.js

删除 jQuery mobile 引用并切换到 jQuery 1.4.4 可能会解决您的问题。

希望这有帮助! :)

关于javascript - 如何调整 JSFiddle 中的代码以在浏览器中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46819149/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com