gpt4 book ai didi

javascript - jQuery 动态页面加载 - 其他 javascript 已损坏,我应该如何导入页面特定的 js?

转载 作者:行者123 更新时间:2023-11-28 05:14:38 24 4
gpt4 key购买 nike

好吧,这将是一件很酷的事情!

注意:这将适用于运行 sqlite 和 mongoose 的 Windows 桌面应用程序,因此加载时间并不那么重要(目前对我来说),并且不会连接到非本地服务器。

我进行了全面搜索,但找不到任何适合我情况的内容,大多数似乎加载到 iframe 中或使用 css-tricks.com 提供的框架

我正在使用我自己的(某种)框架。我使用的库是 bootstrap 3、jquery 2.1.4、jqueryui 1.12.1 和 Bootstrap-select v1.12.1

index.php 会将所有内容动态加载到 div#wrapper 中,并将充当所有页面加载的头部。这是我的index.php 的骨架。在 sidebar.html 中,链接具有“pagetoload”属性,jquery 捕获点击事件并将数据加载到 div#wrapper

    <body>
<?php require_once("res/sidebar.html"); ?>
<div class="container-fluid" id="body-container">
<div id="wrapper" style="border:1px black solid;">
<!-- dynamic page content will be loaded here-->
</div>
</div>

<script src="res/js/jquery.js"></script>
<script src="res/js/jquery-ui.js"></script>
<script src="res/js/bootstrap.js"></script>
<script src="res/js/bootstrap-select.js"></script>
<script src="res/js/menu-handling.js"></script>



<script>
//index.php js
$(document).ready(function () {

$.get("home.php", function (data) {
$("div#wrapper").html(data);
});


$("a.loader").click(function (e) {
e.preventDefault();
$.get($(this).attr("pagetoload"), function (data) {
$("div#wrapper").html(data);
});
});
//dateFormat 10/dd/yy to constrain input only to october
//get current month number and constrain to prevent additions to wrong month
$("#date-input").datepicker({
dateFormat: "12/dd/yy"
, constrainInput: true
});
$("#date-input").focus(function () {
$(this).datepicker("show");
});

});
</script>
</body>

理想情况下,动态加载的每个页面都将包含最少的 php,并且仅包含该页面必需的 html/css/js。例如,我的问题是,在加载一页(例如我的 dbviewer.php)(其中包含 js 并给我异步加载警告)并将 home.php 重新加载到容器中后,javascript 不再起作用。每个页面的 javascript 都是内联标签。

我尝试将每个动态页面的所有 javascript 都堆积到 index.php 中,以便在启动时加载所有内容,但问题出现了,它仍然无法工作。在使每个页面模块化的同时,使这种动态加载工作的最佳方法是什么?我试图研究这个问题,但只出现了像使用 hashTag 这样的东西。

如果您需要我的文件中的更多代码,请发布,我想我的解释足以让您理解,因为在index.php之外没有什么太疯狂的事情,只是每个动态页面内的脚本基本上与使用 jquery 的 dom 元素。

最佳答案

我留下这个答案是因为它对您有帮助,并且对于任何遇到类似情况的开发人员来说也可以作为一般经验法则。

因此,在开发应用程序时,您必须将主文件中的所有 javascript、css 资源分开,以便在首次页面加载时托管它们。 (也许它的性能更好)

您拥有的所有其他服务器生成的文件(phpnode.js 等)文件的结构仅作为用户单击或登陆的页面的数据源..或者至少尝试......

之后你必须触发

$.ajax().callback

前端函数在每个页面上完成工作。比如页面效果,数据操作等等。回调非常重要,因为那是数据真正加载的时候!

干杯,k

关于javascript - jQuery 动态页面加载 - 其他 javascript 已损坏,我应该如何导入页面特定的 js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41077007/

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