Creating ContextMenu for IE using createPopup

Using CSharp.net, you can create a context menu only for IE. This does not work in FireFox.

Here is the codebehind code,

    protected void Page_Load(object sender, EventArgs e)
    {
        StringBuilder htm = new StringBuilder();
        htm.Append("<TABLE STYLE='border:1pt solid #808080' BGCOLOR='#CCCCCC' WIDTH='140' HEIGHT='220' CELLPADDING='0' CELLSPACING='1'>");
        htm.Append("<TR><TD STYLE='border:1pt solid #CCCCCC'> Line 1</TD></TR>");
        htm.Append("<TR><TD STYLE='border:1pt solid #CCCCCC'>Line 2</TD></TR>");
        htm.Append("<TR><TD STYLE='border:1pt solid #CCCCCC'> Line 3</TD></TR>");
        htm.Append("<TR><TD STYLE='border:1pt solid #CCCCCC'>Line 4</TD></TR>");
        htm.Append("<TR><TD STYLE='border:1pt solid #CCCCCC'> Line 5</TD></TR>");
        htm.Append("<TR><TD STYLE='border:1pt solid #CCCCCC'>Line 6</TD></TR>");
        htm.Append("</TABLE>");

        StringBuilder js= new StringBuilder();

        js.AppendLine("<script type=text/javascript>");
        js.AppendLine("var PopWindow = window.createPopup();");
        js.AppendLine("function dPopWindow(x,y) {");
        js.AppendLine("var PopupHTML = PopWindow.document.body;");
        js.AppendLine("PopupHTML.innerHTML =\""+ htm.ToString() +"\";");
        js.AppendLine("PopWindow.show(x, y, 140, 220, document.body);");
        js.AppendLine("}");
        js.AppendLine("document.oncontextmenu = function() {dPopWindow(event.x,event.y);return false; }");
        js.AppendLine("</script>");

        RegisterStartupScript("key1", js.ToString());
    }