0

我在 page.load 加载了以下 Jquery 代码段

function appendFileSizes() {
var attachmentSize = $j172("#<%= AttachmentsFileSize_HiddenField.ClientID %>").val();
var uploadControlFileList = $j172("#<%=Attachments_HiddenField.ClientID %>").val().split("|");
var files = attachmentSize.split("||");
files.splice(files.length-1, 1);
for (var i = 0; i < files.length; i++) {
    var fileInfo = files[i].split("|");
    var fileIndex = $j.inArray(fileInfo[0], uploadControlFileList);
    if (fileIndex > -1) {
        var label = document.createElement("div");

        label.setAttribute("class", "contactUsAttachmentFileSize");
        label.localName = "fileSize";
        label.innerHTML = "(" + bytesToSize(fileInfo[1], 2) + ")";
        label.style.fontSize = 10;

        var row = $j172("span.ruUploadSuccess:contains('" + fileInfo[0] + "')").parent().parent();
        if (!row.find("div.contactUsAttachmentFileSize").length) {
            $j172(row).append(label);
            uploadControlFileList.splice(fileIndex, 1);
        }
    }
}

}

问题是它适用于除 IE7 之外的所有浏览器,其中 if ( .find) 不起作用并且我的行每次都被添加,而不仅仅是一次。

4

1 回答 1

0

如果您完全可以在 IE7 中找到一种方法,您可以使用条件注释来专门为 IE7(或者不是 [!] IE7,就此而言)编写脚本,这将提供跨浏览器的可行解决方案。

http://www.domincpettifer.co.uk/Blog/32/ie-browser-detection-for-css--using-conditional-comments-

于 2012-11-16T17:44:41.000 回答