php - jQuery 加载和相对路径

标签 php jquery

我正在使用 jQuery 加载页面内容,如下所示:

$("#content").load(path);

内容文件纯粹是这样的内容:

<!--page.php-->
I am content

但是,当我想在我的内容中包含图像时,如下所示:

<!--page.php-->
<img src="images/image.jpg"/>

该路径仅相对于 jQuery 脚本的源而不是 page.php 文件起作用,因此以下示例不适用于上面的代码:

Directory tree:

index.php
jQuery.js
pages/
  page.php
  images/
    image.jpg

因为它使 page.php 相对于 jQuery 所在的位置(位于站点的根目录),因此它无法找到图像文件夹,除非我给它一个确切的路径,该路径在我的实际站点中始终根据位置而变化内容文件位于。

有没有一种简单的方法可以解决这个问题,不需要我在我想要引用的每个图像或内容中放置确切的路径?

最佳答案

我知道你说的是非黑客行为,但你可以在加载内容后执行此操作

$("#content").load(path + '/page.php');

然后

$('#content img').each(function(){
    $(this).prop('src', path + '/' + $(this).prop('src'))
})

关于php - jQuery 加载和相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18608378/

相关文章:

php - 使用 stream_filter_append 和 stream_copy_to_stream 解压缩 gzip

jQuery 工具警报工作一次(但仅一次)

javascript - 在 Javascript 中对具有多个值的数组进行排序

Javascript 全局变量在 jQuery Droppable 中不起作用

php - 当表格在 Firefox 中跨越多个页面时,不打印单元格边框(第一页除外)

php - order by rand() 给大帖子带来麻烦

php - 布伦特里付款 : Merchant is not set up to accept PayPal

php - 使用 AJAX(无刷新)更新部分动态表单 - 无法正常工作

jquery - 我在 Bootstrap 轮播中使用toggleClass jQuery 方法时遇到问题

jQuery双击,但不选择内容