J'ai une table, et quand l'utilisateur clique sur chaque cellule, certains détails devraient apparaître dans une petite div pop-up qui apparaît là où l'utilisateur a cliqué. J'utilise JQuery, mais pas pour lier la fonction à l'événement onclick.event.pageX - Utiliser l'événement JQuery dans une fonction non liée à JQuery?
function detailPopup(cell, event, groupName, groupID, ...)
{
var newDiv = document.createElement("div");
newDiv.id = "detailPop" + groupID;
newDiv.className = "priceDetailPopup";
newDiv.innerHTML = "<p>" + groupName + "</p>"; // more will go here
$(newDiv).click(function()
{
$(this).fadeOut("fast").remove();
}
);
$("#main").append(newDiv);
$(newDiv).css({"left" : event.pageX, "top" : event.pageY}).fadeIn("fast");
}
Tout fonctionne à merveille dans FF, Safari et Chrome. Dans IE, tout fonctionne sauf que la div de détail apparaît sous la table. event.pageX/Y ne fonctionnent pas. Je sais que JQuery corrigera ceux pour IE si je lie la fonction par JQuery comme ceci:
$(cell).click(function(e) { ... e.pageX ... })
Mais je ne peux pas faire cela. (Je ne pense pas que je peux - si vous le faites, s'il vous plaît expliquer comment je peux obtenir six variables dans cette fonction sans avoir à utiliser des étiquettes non-xhtml dans la cellule.)
Y at-il un moyen d'avoir JQuery? "l'objet d'événement sans lier la fonction à travers JQuery? $ JQuery.fixEvent (event); ou quelque chose? Je ne trouve aucune référence pour le faire sur leur site.
Merci beaucoup à l'avance.
Cela fonctionne, mais j'espère qu'il est possible d'utiliser la fonctionnalité existante de jQuery. –
Mmmmk J'ai mis à jour ma réponse :) –
C'est tout! Deux bonnes réponses en une. Merci! –