gpt4 book ai didi

javascript - 一些代码的澄清

转载 作者:行者123 更新时间:2023-11-30 23:46:29 24 4
gpt4 key购买 nike

我遇到过一个网站,它似乎使用 Ajax,但不包含任何 js 文件,除了一个名为 ajax.js 的文件,该文件具有以下内容:

function run(c, f, b, a, d) {
var e = null;
if (b && f) {
document.getElementById(b).innerHTML = f
}
if (window.XMLHttpRequest) {
e = new XMLHttpRequest()
} else {
if (window.ActiveXObject) {
e = new ActiveXObject(Microsoft.XMLHTTP)
}
}
e.onreadystatechange = function () {
if (e.readyState == 4) {
if (e.status == 200 || e.statusText == "OK") {
if (b) {
document.getElementById(b).innerHTML = e.responseText
}
if (a) {
setTimeout(a, 0)
}
} else {
console.log("AJAX Error: " + e.status + " | " + e.statusText);
if (b && d != 1) {
document.getElementById(b).innerHTML = "AJAX Error. Please try refreshing."
}
}
}
};
e.open("GET", c, true);
e.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
e.send(null)
}

就像您可能已经猜到的那样,它在页面内发出查询的方式如下:

run('page.php',loadingText,'ajax-test', 'LoadSamples()');

我必须承认,这是我第一次看到一个我无法弄清楚事情是如何完成的页面。我有几个问题:

  • 这是服务器端 Ajax 还是相似的东西?如果没有,有人可以吗澄清一下这到底是什么?
  • 为什么要使用这个?是为了隐藏设计细节吗? (否则由 javascript 以纯文本形式显示)
  • 转换我的内容有多困难现有应用程序融入此设计图案? (也许是一个主观问题,但任何简短的建议都可以)

有什么建议吗?

最佳答案

不确定您在这里到底要问什么,但给出的函数实际上相当简单。解码变量/参数:

  • e = AJAX 请求对象
  • c = 向其发送 AJAX 请求的页面
  • f = 加载要在指定元素 b 中显示的文本
  • b = 要显示结果的元素的 ID
  • a = ajax 请求成功时调用的函数
  • d = bool 值 - 如果为 true,则在失败时显示错误

我无法确切地说出他们使用这种特定方法的确切原因 - 查看使用此功能的完整页面可能会有所帮助。

我认为它没有隐藏任何设计细节。对我来说,它的做事方式确实有点奇怪,但正如我上面所说,页面使用的方式可能有特定的原因。

你能使用这个代码吗?当然。

您应该使用此代码吗?答案是:它是适合这项工作的工具吗?

将现有代码转换为使用此方法有多困难?这取决于您现有的代码以及这是否是适合该工作的工具。

关于javascript - 一些代码的澄清,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2876669/

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