如何检查 HTML 内容是否被 AJAX 请求调用?
How can I check if HTML content is called by AJAX request?
这是图像马赛克的 HTML 内容。
<div id="container">
<img id="1" />
...
<img id="20" />
</div>
此脚本在页面加载或调整大小后根据图像创建马赛克。
<script>
function create_mosaic(){
/*creates mosaic by resizing and arranging images in container*/
}
jQuery(window).load(function() {
create_mosaic();
});
jQuery(window).resize(function() {
create_mosaic();
});
</script>
但是,如果 AJAX 请求的 HTML 内容,则此脚本无法运行,因为 window.load 未被触发。对于这种情况,我正在考虑在加载所有图像后调用 create_mosaic()
函数。为此,如何检查 HTML 是否由 AJAX 请求请求?
有人回答了问题,但随后将其删除。我试过了,它有效!方法如下:
if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) &&
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
/** Yes, it was an ajax call! */
/* I can call create_mosaic() function here
after checking if images have been loaded*/
}
这是图像马赛克的 HTML 内容。
<div id="container">
<img id="1" />
...
<img id="20" />
</div>
此脚本在页面加载或调整大小后根据图像创建马赛克。
<script>
function create_mosaic(){
/*creates mosaic by resizing and arranging images in container*/
}
jQuery(window).load(function() {
create_mosaic();
});
jQuery(window).resize(function() {
create_mosaic();
});
</script>
但是,如果 AJAX 请求的 HTML 内容,则此脚本无法运行,因为 window.load 未被触发。对于这种情况,我正在考虑在加载所有图像后调用 create_mosaic()
函数。为此,如何检查 HTML 是否由 AJAX 请求请求?
有人回答了问题,但随后将其删除。我试过了,它有效!方法如下:
if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) &&
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
/** Yes, it was an ajax call! */
/* I can call create_mosaic() function here
after checking if images have been loaded*/
}