我有一些 div:
<div id='dialog'></div>
现在我想在这个 div 中加载一个外部 html 文件并使用它的 js 函数。
我知道我可以使用 jQuery.Load() 加载它并且工作正常,问题是我想使用 html js 函数。
主要问题是我有几个 div,我将这个 html 文件加载到其中,我希望当我激活 js 函数时它只能在特定的 div 上工作。
我有一些 div:
<div id='dialog'></div>
现在我想在这个 div 中加载一个外部 html 文件并使用它的 js 函数。
我知道我可以使用 jQuery.Load() 加载它并且工作正常,问题是我想使用 html js 函数。
主要问题是我有几个 div,我将这个 html 文件加载到其中,我希望当我激活 js 函数时它只能在特定的 div 上工作。
将参数传递给您正在加载的视图,该参数将指示已加载视图的容器:
jQuery.Load(url, { containerId: 'dialog' })
我记得当 jQuery1.4 发布时我遇到了问题。在那个版本中,.load()
当指定目标容器时,突然开始剥离 js。
我当时做了什么:
initContent
),将 jQuery 元素作为参数<a href="myjs.js#initContent" class="dynamicJs" style="display:none;"></a>
$('a.dynamicJs')
在我的目标 div 中搜索以提取 js url,并从href
这也适用于 css。它需要一些时间在所有导航器上进行调整(IE 上的 css 部分数量有限,动态调用函数的方式不同),最后我得到了更多我期望的代码。它还需要对我的 html/js 模块进行大量重构(但我必须承认我最终拥有了一个非常干净的代码)
我确信现在有框架可以更好地处理这种情况。但这是我当时想出来的。
希望这会有所帮助