我有一個表格,當用戶點擊每個單元格時,一些細節應該出現在用戶點擊的小型彈出窗口中。我正在使用JQuery,但不是將函數綁定到onclick事件。event.pageX - 在未通過JQuery綁定的函數中使用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");
}
在FF,Safari和Chrome中一切正常。在IE中,除了detail div出現在表格下方之外,它都可以工作。 event.pageX/Y不工作。我知道jQuery將修復這些對於IE,如果我通過JQuery的綁定功能是這樣的:
$(cell).click(function(e) { ... e.pageX ... })
但我不能這樣做。 (我不認爲我可以 - 如果你這樣做,請解釋我如何在該函數中獲得六個變量,而不必在單元格中使用非xhtml標記。)
有沒有辦法讓JQuery「修復「沒有通過JQuery綁定函數的事件對象? $ JQuery.fixEvent(事件);或者其他的東西?在他們的網站上我找不到任何參考資料。
非常感謝提前。
這有效,但我希望有一種方法可以使用jQuery的現有功能。 – 2009-06-12 22:08:27
嗯,我更新了我的答案:) – 2009-06-12 23:33:05