伙计们,所以我解决了在ajax调用之后如何加载插件的问题,但现在我正在研究如何在另一个ajax调用中的ajax调用之后加载插件。 ajax部分功能完美但插件没有加载。 这是代码:
$(document).ready(function () {
var container = $("#content");
var link;
$("a.links").click(function (event) {
event.preventDefault();
link = $(this).attr("href") + " #content";
var link2 = $(this).attr("href");
container.load(link, function () {
if (link2 == 'gallery.html') {
$("a.glinks").click(function (event) {
event.preventDefault();
link2 = $(this).attr("href") + " #content";
$("#content2").load(link2, function () {
var link3 = $("<link>");
link3.attr({
type: 'text/css',
rel: 'stylesheet',
href: 'C:\wamp\www\css\jquery.lightbox-0.5.css'
});
$("head").append(link3);
$('#gallery a').lightBox();
});
});
}
});
});
我还尝试重新加载样式表。
答案 0 :(得分:0)
好吧,你真的不需要任何这种嵌套。
只需从原始文档加载样式表即可。您无需动态加载它:
<link type="text/css" rel="stylesheet" media="all" href="C:\wamp\www\css\jquery.lightbox-0.5.css">
注意:如果href是相对路径,那将是最好的。
现在,将JS压缩为仅live
一次点击:
$(document).ready(function () {
$("a.links, a.glinks").live('click', function (event) {
event.preventDefault();
var link = $(this).attr("href") + " #content";
var target_div = $(this).hasClass('glinks') ? "#content2" : "#content";
$(target_div).load(link, function () {
$(this).find('#gallery a').lightBox();
});
});
});