引导程序's的javascript在本地工作,但在部署到服务器时不能工作
Bootstrap's javascript works locally but not when deployed to a server
我下载了Twitter引导程序的基本示例并对其进行了自定义。我在本地(使用WAMP服务器)进行了测试,CSS和JScript都运行良好。
我把文件上传到了我的网络托管服务,但JScript就是不起作用。我注意到它是因为下拉框停止工作。
我搜索了其他有同样问题的人,但他们都在使用ruby,而我没有。只是bootstrap提供的play CSS+JScript。此外,他们说解决方案是先包含bootstrap.js,然后再包含jquery.js。我试过了,但没有成功,我甚至包含了未缩小的.js,但仍然没有成功。
我使用相同的浏览器(Chrome)进行本地和远程测试。我还尝试了不同的托管服务,但两者都出现了问题。
非常感谢您的帮助。
其他类似问题:
- Javascript功能在本地主机上工作,但在部署到Heroku时不工作
- twitter引导程序下降突然不起作用
问题可能是在jQuery之前加载boosrap.js。在本地,您的浏览器可能使用Jquery的缓存副本,因此它在那里工作,但在您的实时网站上不工作。尝试通过切换代码中的这两行来修复它:
<script src="/code4pt/styles/js/bootstrap.js"></script>
<script src="/code4pt/styles/js/jquery.js"></script>
我知道这很奇怪,但我想我找到了解决方案。以前我使用的是(提供的)jQuery 1.7.2 minimied。现在我将其更改为使用jQuery 1.8.0而不是缩小版。它刚刚开始工作。。。我做的另一件事是将所有文件的编码转换为UTF8(我认为这是真正的问题/解决方案)
我也遇到了同样的问题。在IE中,该站点在本地主机上工作,但在其他服务器上托管时则不工作。添加以下元标签修复了它。
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
我也遇到了同样的问题,所以发现这篇帖子和其他人喜欢它,我松了一口气。我的解决方案是相似的。我拔了半天头发,尝试各种各样的东西。遛狗。喝了半打啤酒。睡懒觉,吃早饭。将顶部的样式表和底部的js从本地html重新复制到服务器php,然后由于某种未知的原因,它又开始工作了。对于其他经历同样情况的人来说,唯一有用的点是:
- 试着回到一个工作场景——在我的例子中,index.html在服务器上工作,而不是index.php
- 尝试使用不同的浏览器,以防出现奇怪的情况
- 确保您不断清除浏览器缓存(例如,右键单击Chrome中的重新加载按钮,然后选择"清空缓存并硬重新加载")
- 检查您的引导css和js版本。在版本中前后更改它们,直到您获得成功。很可能,引导程序主题下载附带的版本是最有可能工作的版本
我以前遇到过模拟程序问题。选项卡功能在我的HTML网站中运行良好,但当编码到Wordpress主题中时就不起作用了。所有的源URLS都是用Wordpress动态生成的。
当我将所有JS链接(Modernizr除外)添加到页脚而不是页眉时,选项卡终于开始工作了。
回到基础:如果Debug在本地机器上设置为true,在部署环境中设置为false,请确保你的.min.JS文件不会覆盖你对.JS文件的非缩小版本所做的自定义(同样适用于.css)。
您也可以在本地计算机上关闭"调试",您应该会看到同样的问题。
派对迟到了,但我发现我的问题是Bootstrap.js在部署过程中没有被推出。
除了@dialex和@Darrell提出的非常有用的建议外,我还要补充一点,如果这些都不起作用,你可以查看你可能链接到的任何代码,即通过require ('page.php');
,是否有重复。重复的.js链接往往会导致这些问题。
我在一个构建并上传到AmazonS3的网站上遇到了这个问题。在我的本地机器甚至本地服务器上都能很好地工作,但在亚马逊提供服务时却无法工作。Firefox(但不是Chrome)中的控制台显示无法加载bootstrap.min.css(等),因为它们的MIME类型不是text/css。
我不得不使用S3控制台强制将它们的类型更改为text/css,清除缓存并重新加载。哇!
我正在使用Codeigniter。我通过在config.php.中更改base_url
来解决这些问题
上一篇:
$config['base_url'] = 'http://localhost/public_html';
更改为:
$config['base_url'] = 'http://(my intranet server ip adress)/public_html';
也有同样的问题
在我的.html文件中,我有这行
<link th:rel="stylesheet" th:href="@{/webjars/bootstrap/4.0.0-2/css/bootstrap.min.css} "/>
将其更改为此后
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
一切都很好。我猜webjar内部有http
,将css链接改为从https
开始解决了我的问题
- JQuery-在本地工作,但未定义$,仅在部署的站点上定义
- GetcurrentPosition不'一旦部署就无法工作
- 引导程序's的javascript在本地工作,但在部署到服务器时不能工作
- 意思是.js - 登录后重定向用户 - 在本地工作,但在部署时不起作用
- WebSocket 应用程序在部署在 Tomcat8 服务器上时无法正常工作
- WAR文件已部署,但在GlassFish上无法正常工作
- 应用程序一旦部署到Meteor.com就停止工作
- Javascript:将字符串视为数组在本地工作,但不部署在IE中
- Angular Meteor应用程序在localhost中工作,但在部署到服务器时失败
- 为什么部署(串联、缩小)AngularJS+RequireJS应用程序不工作
- 投票系统在部署到heroku时不工作
- Rails 4-Javascript没有'在Heroku部署后无法工作
- Meteor 0.9模数部署;t工作-“;找不到模块'纤维'&”;
- Jscolor在新部署的第一次回发后停止工作,但在重新加载的回发后继续工作
- 当使用MUP(流星)部署时,Meteor.js i18n包无法工作
- MUP将失败部署到在另一台服务器上工作的项目上
- 工具提示在本地主机上工作,但不在已部署的站点上
- Sails.js websockets在localhost中工作,但在我部署到Openshift后就不工作了
- ruby on rails-Javascript在本地工作,但在部署到Heroku时不再工作.(带涡轮连杆.)
- 什么's是部署coffescription的首选工作流程