FBrowser_wev8.js 2.41 KB
Mobile_NS.FBrowser = {};

Mobile_NS.FBrowser.onload = function(p){
	var theId = p["id"];
	var $field = $("#" + theId);
	var $fieldWrap = $("#div" + theId);
	
	var $namewrap = $fieldWrap.find(".browser-name-wrap");
	var $arrowbtn = $fieldWrap.find(".browser-arrow-btn");
	var $fieldSpan = $fieldWrap.find(".browser-name");
	var $fieldSpanHid = $fieldWrap.find(".browser-hiddenName");
	
	var expand = false;
	var browserId = p["browsertype"];
	var browserName = p["browsername"];
	var fieldlabel = p["fieldlabel"];
	var fieldid = p["fieldid"];
	
	var readonly = p["readonly"] == 1;
	//console.log(p);

    $field.on("change", function(){
        setTimeout(function(){
            var clientWidth = $fieldSpan[0].clientWidth,
                scrollWidth = $fieldSpanHid[0].scrollWidth;

            expand = scrollWidth > clientWidth;

            $arrowbtn.toggleClass("showblock", expand && !readonly);
            if(!expand){
                $namewrap.toggleClass("browser-showall", false);
                $arrowbtn.toggleClass("transform180", false);
            }
        },100);
    });

    $field.triggerHandler("change");

    if(readonly){//只读
        //文档、多文档、流程、多流程、归档流程
        if(browserId == "16" || browserId == "9" || browserId == "37" || browserId == "152" || browserId == "171"){
            $fieldSpan.addClass("browser-link");
            $namewrap.on("click", function(){
                Mobile_NS.openBrowserView(theId, theId+"_span", browserId);
			});
            return;
		}

        $namewrap.on("click", function(){//点击展开收起
            expand && $namewrap.toggleClass("browser-showall");
        });
        return;
	}
	
	//打开浏览框
	$namewrap.on("click", function(){
		Mobile_NS.openBrowser(theId, theId+"_span", browserId, browserName, fieldlabel, fieldid);
	});		
	
	//展开收起
	$arrowbtn.on("click", function(event){
		if(!expand) return;
		$namewrap.toggleClass("browser-showall");
		$(this).toggleClass("transform180",$namewrap.hasClass("browser-showall"));
		event.stopPropagation();
	});
	
	//清空
	$fieldWrap.find(".browser-clear-btn").on("click", function(event){
		Mobile_NS.clearBrowser(theId, theId+"_span");
		event.stopPropagation();
	});
	
	//打开浏览框
    $fieldWrap.find(".browser-flag").on("click", function(event){
		Mobile_NS.openBrowser(theId, theId+"_span", browserId, browserName, fieldlabel, fieldid);
        event.stopPropagation();
	});
};