使用 ajax 加载 div 后脚本不会 运行
Script doesn't run after load a div with ajax
我有脚本 audiojs 用于更改 html 中音频标签的样式,当我转到我的页面时它可以正常工作,但是当我单击按钮重新加载 div(这个 div 包含 audios 标签)具有函数加载 jQuery 删除了 audiojs 的样式,我尝试在使用 jQuery getScript
加载 div 后获取脚本,但是脚本加载多次导致我的浏览器停止。
这是调用audiojs的函数
audiojs.events.ready(function() {
audiojs.createAll();
});
我想要一个不再调用此函数一次的解决方案,谢谢
尝试添加一个新的脚本标签到脚本中以重新加载您的代码,如下所示:
<script language="text/javascript">
function audiojs()
{
var div= document.getElementsByTagName('head')[0];
var script= document.createElement('script');
script.type= 'text/javascript';
script.src= 'audiojs.js';
div.appendChild(script);
}
audiojs();
</script>
我希望你现在能得到一些想法。还要检查您的缓存。
很难知道 audio.js 库没有任何 link,但大多数 API 或库会给出一些指示,表明它们已加载。我会使用 if 语句来创建如下内容:
(function () {
function checkForLoaded(){
if (audiojs.state !== null) { //or something similar
audiojs.createAll();
}
}
})();
谢谢大家,
我找到了解决方案,
在使用 ajax 加载 div 后,我添加了此代码以删除 class audiojs
$("audio").removeClass("audiojs");
我有脚本 audiojs 用于更改 html 中音频标签的样式,当我转到我的页面时它可以正常工作,但是当我单击按钮重新加载 div(这个 div 包含 audios 标签)具有函数加载 jQuery 删除了 audiojs 的样式,我尝试在使用 jQuery getScript
加载 div 后获取脚本,但是脚本加载多次导致我的浏览器停止。
这是调用audiojs的函数
audiojs.events.ready(function() {
audiojs.createAll();
});
我想要一个不再调用此函数一次的解决方案,谢谢
尝试添加一个新的脚本标签到脚本中以重新加载您的代码,如下所示:
<script language="text/javascript">
function audiojs()
{
var div= document.getElementsByTagName('head')[0];
var script= document.createElement('script');
script.type= 'text/javascript';
script.src= 'audiojs.js';
div.appendChild(script);
}
audiojs();
</script>
我希望你现在能得到一些想法。还要检查您的缓存。
很难知道 audio.js 库没有任何 link,但大多数 API 或库会给出一些指示,表明它们已加载。我会使用 if 语句来创建如下内容:
(function () {
function checkForLoaded(){
if (audiojs.state !== null) { //or something similar
audiojs.createAll();
}
}
})();
谢谢大家,
我找到了解决方案,
在使用 ajax 加载 div 后,我添加了此代码以删除 class audiojs
$("audio").removeClass("audiojs");