动态添加元素上的jquery qtip
我正在摆弄jquery“qtip”工具提示插件,我试图将qtip功能添加到动态添加到我的网页(通过ajax)的元素中,但不知道如何添加。我想我需要在jquery中某处使用“live”,但不知道在哪里 任何帮助都会很好 我的进退两难有个问题。您会注意到qtip在现有的三个链接上工作得很好,但是如果您单击“添加链接”,然后将鼠标悬停在创建的链接上,则即使它具有“qtip”css类,也没有工具提示 javascript框包含一个函数,可以动态地向框添加一个链接,即qtip插件,然后是我的自定义代码,该代码创建了qtip,其中所有元素最后都带有“qtip”css类 下面是我的jquery ajax代码。我不知道如何使用qtip类将qtip重新应用于新元素动态添加元素上的jquery qtip,jquery,tooltip,qtip,Jquery,Tooltip,Qtip,我正在摆弄jquery“qtip”工具提示插件,我试图将qtip功能添加到动态添加到我的网页(通过ajax)的元素中,但不知道如何添加。我想我需要在jquery中某处使用“live”,但不知道在哪里 任何帮助都会很好 我的进退两难有个问题。您会注意到qtip在现有的三个链接上工作得很好,但是如果您单击“添加链接”,然后将鼠标悬停在创建的链接上,则即使它具有“qtip”css类,也没有工具提示 javascript框包含一个函数,可以动态地向框添加一个链接,即qtip插件,然后是我的自定义代码,该
function ajaxunitCalendar(X,Y,Z){
$('#ajaxdiv').fadeOut(300,loadcontent);
function loadcontent()
{
var changecal = "<?php echo base_url();?>calendar/unit/" + X + "/" + Y + "/" + Z + " #ajax_calendar_wrap";
$("#ajaxdiv").load(changecal,'',function(){
$('#ajaxdiv').fadeIn(300);
return false;
});
return false;
}
return false;
};
函数ajaxunitCalendar(X、Y、Z){
$('#ajaxdiv')。淡出(300,loadcontent);
函数loadcontent()
{
var changecal=“calendar/unit/”+X+“/”+Y+“/”+Z+“#ajax_calendar_wrap”;
$(“#ajaxdiv”).load(changecal,”,function(){
$('ajaxdiv').fadeIn(300);
返回false;
});
返回false;
}
返回false;
};
哎呀,完全误解了……太晚了:p
这就是您需要的:
只需将
qtip()
插件应用于您创建的所有元素 哎呀,完全误读了…太晚了:p
这就是您需要的:
只需将
qtip()
插件应用于您创建的所有元素 在添加元素后尝试添加QTip,如本小提琴所示:
该代码:
$(document).ready(function() {
$("#add_link").live('click', function(e) {
$('#box').append("<a href='#' class='qtip'>Another Link</a><br/><br/>");
e.preventDefault();
bindQtip();
});
bindQtip();
});
function bindQtip() {
$(".qtip").qtip({
content: 'Hello!',
position: {
corner: {
target: 'topRight',
tooltip: 'bottomLeft'
}
},
style: {
padding: 10,
textAlign: 'center',
border: {
width: 1,
radius: 3
//color: '#8ACAED'
},
tip: 'bottomLeft',
name: 'red' // Inherit t
}
});
}
$(文档).ready(函数(){
$(“#添加链接”).live('click',函数(e){
$(“#框”)。追加(
);
e、 预防默认值();
bindQtip();
});
bindQtip();
});
函数bindQtip(){
$(“.qtip”).qtip({
内容:“你好!”,
职位:{
角落:{
目标:“右上角”,
工具提示:“左下角”
}
},
风格:{
填充:10,
textAlign:'中心',
边界:{
宽度:1,
半径:3
//颜色:“#8ACAED”
},
提示:“左下角”,
名称:'red'//t
}
});
}
在添加元素后尝试添加QTip,如本小提琴所示:
该代码:
$(document).ready(function() {
$("#add_link").live('click', function(e) {
$('#box').append("<a href='#' class='qtip'>Another Link</a><br/><br/>");
e.preventDefault();
bindQtip();
});
bindQtip();
});
function bindQtip() {
$(".qtip").qtip({
content: 'Hello!',
position: {
corner: {
target: 'topRight',
tooltip: 'bottomLeft'
}
},
style: {
padding: 10,
textAlign: 'center',
border: {
width: 1,
radius: 3
//color: '#8ACAED'
},
tip: 'bottomLeft',
name: 'red' // Inherit t
}
});
}
$(文档).ready(函数(){
$(“#添加链接”).live('click',函数(e){
$(“#框”)。追加(
);
e、 预防默认值();
bindQtip();
});
bindQtip();
});
函数bindQtip(){
$(“.qtip”).qtip({
内容:“你好!”,
职位:{
角落:{
目标:“右上角”,
工具提示:“左下角”
}
},
风格:{
填充:10,
textAlign:'中心',
边界:{
宽度:1,
半径:3
//颜色:“#8ACAED”
},
提示:“左下角”,
名称:'red'//t
}
});
}
hmm……似乎不行。在框中创建的链接仍然没有工具提示。太棒了。如何将qtip功能添加到从jquery的ajax加载的html中?例如,如果“添加链接”链接从#框内的另一个网页加载了3个带有qtip类的链接?有没有办法将qtip添加到.qtip类的现有和所有未来实例中,不管它们是完全从js创建的还是使用ajax加载到dom中的?您必须在onSuccess
callback中的htmlresponse上重新应用插件(首先找到正确的锚链接)。不管怎样,你都可以在我更新的原始帖子上看到,并用我的代码帮助我做到这一点?@davidtry$('ajaxdiv').find('a.qtip').qtip(qticonfig)代码>在你的回调函数中,嗯……这似乎不行。在框中创建的链接仍然没有工具提示。太棒了。如何将qtip功能添加到从jquery的ajax加载的html中?例如,如果“添加链接”链接从#框内的另一个网页加载了3个带有qtip类的链接?有没有办法将qtip添加到.qtip类的现有和所有未来实例中,不管它们是完全从js创建的还是使用ajax加载到dom中的?您必须在onSuccess
callback中的htmlresponse上重新应用插件(首先找到正确的锚链接)。不管怎样,你都可以在我更新的原始帖子上看到,并用我的代码帮助我做到这一点?@davidtry$('ajaxdiv').find('a.qtip').qtip(qticonfig)代码>在回调函数中,每次添加另一个链接时,都必须重新应用插件。每次添加另一个链接时,都必须重新应用插件。效率不高,因为每次添加新链接时,都会将qtip插件重新应用于所有与类匹配的插件,当我们只有一个元素时,我们希望将它应用于已经定义和可访问的元素。将选择范围缩小到新附加的元素。Live不会帮助您完成此操作,它用于将函数附加到事件。您需要一个事件来触发附加QTIP的一些代码。在我看来,添加qtip最合理的地方是单击#add#链接的时候。这并不完全有效,因为每次添加新链接时,您都会将qtip插件重新应用到与类匹配的所有对象上,当我们只有一个元素时,我们希望将它应用于已经定义和可访问的元素。将选择范围缩小到新附加的元素。Live不会帮助您完成此操作,它用于将函数附加到事件。您需要一个事件来触发一些ap