Javascript 当使用document.write写入href时,无法加载此文件
我有一些这样的代码Javascript 当使用document.write写入href时,无法加载此文件,javascript,jquery,prettyphoto,Javascript,Jquery,Prettyphoto,我有一些这样的代码 <span id="$RsC" class="menu" title="Action menu" onclick="menu(\''.$RsC.'\')">click</span> function menu(id){ var d = document.getElementById(id); d.innerHTML ='<a href="somthing;iframe=true&width=400&heigh
<span id="$RsC" class="menu" title="Action menu" onclick="menu(\''.$RsC.'\')">click</span>
function menu(id){
var d = document.getElementById(id);
d.innerHTML ='<a href="somthing;iframe=true&width=400&height=170" rel="prettyPhoto[iframe]" >Doesnt work</a>';
}
<script type="text/javascript" charset="utf-8">
jQuery.noConflict();
jQuery(document).ready(function($) {
$(".pp_pic_holder").remove();
$(".pp_overlay").remove();
$(".ppt").remove();
$(".gallery a[rel^='prettyPhoto']").prettyPhoto({theme:'h0mayun'});
});
</script>
点击
功能菜单(id){
var d=document.getElementById(id);
d、 innerHTML='';
}
jQuery.noConflict();
jQuery(文档).ready(函数($){
$(“.pp_pic_holder”).remove();
$(“.pp_覆盖”).remove();
$(“.ppt”).remove();
$(“.gallery a[rel^='prettypto'])。prettypto({主题:'h0mayun'});
});
问题是,在点击“点击”并将html链接写入插件后,无法加载
任何帮助都将不胜感激
编辑-------------------
该死的冲突,这又是jquery冲突,但为了让它工作,我将函数更改为:
<script type="text/javascript" charset="utf-8">
jQuery.noConflict();
jQuery(document).ready(function($) {
$(".pp_pic_holder").remove();
$(".pp_overlay").remove();
$(".ppt").remove();
$(".gallery a[rel^='prettyPhoto']").prettyPhoto({theme:'h0mayun'});
});
</script>
function menu(id){
var d = document.getElementById(id);
d.innerHTML ='<a href="somthing;iframe=true&width=400&height=170" rel="prettyPhoto[iframe]" >Doesnt work</a>';
jQuery.noConflict();
jQuery(document).ready(function($) {
$(".pp_pic_holder").remove();
$(".pp_overlay").remove();
$(".ppt").remove();
$(".gallery a[rel^='prettyPhoto']").prettyPhoto({theme:'h0mayun'});
});
}
jQuery.noConflict();
jQuery(文档).ready(函数($){
$(“.pp_pic_holder”).remove();
$(“.pp_覆盖”).remove();
$(“.ppt”).remove();
$(“.gallery a[rel^='prettypto'])。prettypto({主题:'h0mayun'});
});
功能菜单(id){
var d=document.getElementById(id);
d、 innerHTML='';
jQuery.noConflict();
jQuery(文档).ready(函数($){
$(“.pp_pic_holder”).remove();
$(“.pp_覆盖”).remove();
$(“.ppt”).remove();
$(“.gallery a[rel^='prettypto'])。prettypto({主题:'h0mayun'});
});
}
如果您正在执行此操作,$(“.gallery a[rel^='prettypto'])代码>在onClick函数之前
在编写了对象的html之后,您必须再次执行此操作,以便插件将再次初始化。并且它不会以这种方式工作。加载页面后,可以为页面上的现有元素初始化PretTo。当您插入一个新元素时,Pretto插件对它一无所知,因为它已经将自己“附加”到以前存在的元素上。您必须在页面上的所有更改后将其初始化为,或在更改后将其附加到更新的元素。像这样
function menu(id){
var d = document.getElementById(id);
d.innerHTML ='<a href="somthing;iframe=true&width=400&height=170" rel="prettyPhoto[iframe]" >Doesnt work</a>';
$('a', d).prettyPhoto({theme:'h0mayun'});
}
功能菜单(id){
var d=document.getElementById(id);
d、 innerHTML='';
$('a',d).prettypto({主题:'h0mayun'});
}
ps:我用Prettypto的例子做了一个简单的测试,它正在工作
function menu(id){
var d = document.getElementById(id);
d.innerHTML ='<a href="images/fullscreen/3.jpg" rel="prettyPhoto[gallery1]">Test link</a>';
$('a', d).prettyPhoto();
}
功能菜单(id){
var d=document.getElementById(id);
d、 innerHTML='';
$('a',d);
}
@h0mayun是否有指向该页面的链接以查看其运行情况?@h0mayun将我的部分代码替换为$('a',d)。单击(函数(){alert(“我在这里!”);返回false;});然后试试看(点击链接“不起作用”)。你看到警报消息了吗?我不使用prettypto,这就是为什么我问你这个链接的原因。@h0mayun和我已经用prettypto的一个例子做了一个测试(在答案中引用)——它正在工作,所以肯定有其他东西在你的页面上产生了问题。例如-指向图像的链接不正确或无法被Prettypto脚本识别。它也无法工作:(整个函数类似于:函数菜单(e,id,spanid,dirFile,href,dirName,file){var d=document.getElementById(id);d.innerHTML='/';var el=document.getElementById(id);el.style.display=(el.style.display=='block')?'none':'block';menu.el=el;$('a',d).prettypoto();//如果(e.stopPropagation)e.stopPropagation();e.cancelBubble=true;返回false;}并且我确定链接正常,请在此处停止事件