2017-08-04 122 views
0

我的項目是在帶有Javascript的Asp.net中創建的。當我在Google Chrome中顯示網站時,它會正確顯示。當我在Internet Explorer 11中顯示該頁面時,我得到一個空白頁面。Bing地圖顯示在Chrome瀏覽器上但不是IE

我不知道是什麼原因使地圖顯示,但是這是一個顯示空白頁來源:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head id="Head1"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title> 

</title><meta http-equiv="CACHE-CONTROL" content="NO-CACHE" /><meta http-equiv="EXPIRES" content="Mon, 22 Jul 2002 11:12:01 GMT" /><meta id="metaDescription" name="description" /><meta id="metaKeywords" name="keywords" /> 
    <script type="text/javascript" src="menu/jquery.min.js"></script> 
    <script type="text/javascript" src="menu/menu.js"></script> 
     <script type="text/javascript" src="js/mapBing.js"></script> 
     <script type="text/javascript" src="js/preloader.js"></script> 
    <!--[if lte IE 7]> 
     <style type="text/css"> 
      html .jqueryslidemenu{height: 1%;} /*Holly Hack for IE7 and below*/ 
     </style> 
     <![endif]--> 
    <meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" /> 

    <script type="text/javascript" src="https://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0&s=1"></script> 
    <script type="text/javascript"> 
     var mapPnl = null; 
     var refreshRate = 30000; 

     function SetMap() { 
      // Set the latitude value 
      var lat = document.getElementById("txtLatitude").value; 

      // Set the longitude value 
      var lng = document.getElementById("txtLongitude").value; 

      // Check if both of the latitude and longitude have been set 
      if (lng === "" | lat === "") { 
       alert("You need to input both Latitude and Longitude first."); 
       return; 
      } 

      // Set the zoom level 
      var ddlzoom = document.getElementById("ddlZoomLevel"); 
      var zoom = ddlzoom.options[ddlzoom.selectedIndex].value; 

      // Reset the map instance 
      map.SetCenter(new VELatLong(lat, lng)); 
      map.SetMapStyle(style); 
      map.SetZoomLevel(zoom); 
     } 

     function FindLoc() { 
      var loc = document.getElementById("txtLocation").value; 
      try { 
       // Call VEMap.Find method to find the location 
       map.Find(null, loc); 
      } catch (e) { 
       alert(e.message); 
      } 
     } 

     function SetStyle(s) { 
      if (s == "r") { 
       style = VEMapStyle.Road; 
      } 
      else { 
       style = VEMapStyle.Aerial; 
      } 
     } 

    </script> 
    <style type="text/css"> 
     .map { 
      position: absolute; 
      width: 960px;height:500px;border: #555555 2px solid; 
     } 
     .map-full { 
      position: absolute; 
      width: 99.7%; 
      margin-left: 1px!important; 
      height: 99.5%; 
      border: #555555 2px solid; 
     } 
    </style> 
    <link href="css/main.css" rel="stylesheet" type="text/css" /><link href="menu/menu.css" rel="stylesheet" type="text/css" /> 
    <script type="text/javascript"> 

    function isNumberKey(evt, ctlName) { 
     var charCode = (evt.which) ? evt.which : event.keyCode; 

     if ((charCode < 48 && charCode !== 36 && charCode !== 44 && charCode !== 46) || charCode > 57) 
     return false; 
     else { 
     var ctl = document.getElementById(ctlName); 
     var testStr = ctl.value + String.fromCharCode(charCode); 
     testStr = testStr.replace("$", ""); 
     testStr = testStr.replace(",", ""); 
     var regex = /^\d+(\.\d{0,2})?$/; 
     var output = regex.test(testStr); 
     return output; 
     } 
    } 

    function handleEnter(field, event) { 
     var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode; 
     if (keyCode === 13) { 
     var i; 
     for (i = 0; i < field.form.elements.length; i++) 
      if (field === field.form.elements[i]) 
      break; 
     i = (i + 1) % field.form.elements.length; 
     field.form.elements[i].focus(); 
     return true; 
     } 
     else 
     return true; 
    } 


    String.prototype.trim = function() { 
     return this.replace(/^\s+|\s+$/g, ""); 
    } 

    String.prototype.ltrim = function() { 
     return this.replace(/^\s+/, ""); 
    } 

    String.prototype.rtrim = function() { 
     return this.replace(/\s+$/, ""); 
    } 



    </script> 
    <link href="/css/preloader.css" rel="stylesheet" type="text/css" /><link href="/css/report-main.css" rel="stylesheet" type="text/css" /><link href="/css/sales-report-001.css" rel="stylesheet" type="text/css" /><link href="/css/maps.css" rel="stylesheet" type="text/css" /><link rel="stylesheet" type="text/css" href="/datepicker/css/uiall.css" /> 
    <script src="/js/json2.js" type="text/javascript"></script> 

</head>  
<body onload="mapPnl = document.getElementById('pnlBingMap');LoadMap();" style="width:100%!important;height:100%!important"> 
    <form method="post" action="./MapOnePageSetup.aspx?corpid=fc324da8-c33d-4f18-80ee-90ef9d59acc9" id="Form1"> 
<div class="aspNetHidden"> 
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTEyOTEwMzEyMzlkZKQR68V+zFwhUN8LTUOFSfnBfL4g4D/p2psjSBpBJbac" /> 
</div> 

<div class="aspNetHidden"> 

    <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="33D77860" /> 
    <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEdAAMKaj5pU7stRP1FwXdoBKaH70OchO7F3BG3PsQTkLswd42JiOf78gvdVVuqV78pYrn7l9nCSLMU+dKBxvBWgFKB1cVZEYO3VoKWulo0s9Hf/g==" /> 
</div> 
     <div class="content"> 
      <div id="preloader" style="display: none"> 
       <div id="status"> 
        <img src='images/status.gif' alt='' /><br /> 
        <span class="small-grey">Please wait</span> 
       </div> 
      </div> 
      <input type="hidden" name="hfStartDate" id="hfStartDate" /> 
      <input type="hidden" name="hfFinishDate" id="hfFinishDate" /> 
      <span id="lblError" style="visibility:hidden;width:0px;height:0px;"></span> 
      <div id="timeDiv"></div>    
      <div> 
       <div id="pnlBingMap" class="map-full"> 


</div> 
      </div> 
     </div> 
    </form> 

</body> 
</html> 

這是原來的MapOnePageSetup.aspx來源:

<%@ Page Language="c#" AutoEventWireup="true" CodeFile="MapOnePageSetup.aspx.cs" 
    Inherits="SinglePageApplication.MapOnePageSetup" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head id="Head1" runat="server"> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    <title></title> 
    <meta http-equiv="CACHE-CONTROL" content="NO-CACHE" /> 
    <meta http-equiv="EXPIRES" content="Mon, 22 Jul 2002 11:12:01 GMT" /> 
    <meta name="description" content="" runat="server" id="metaDescription" /> 
    <meta name="keywords" content="" runat="server" id="metaKeywords" /> 
    <script type="text/javascript" src="menu/jquery.min.js"></script> 
    <script type="text/javascript" src="menu/menu.js"></script> 
     <script type="text/javascript" src="js/mapBing.js"></script> 
     <script type="text/javascript" src="js/preloader.js"></script> 
    <!--[if lte IE 7]> 
     <style type="text/css"> 
      html .jqueryslidemenu{height: 1%;} /*Holly Hack for IE7 and below*/ 
     </style> 
     <![endif]--> 
    <meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" /> 

    <script type="text/javascript" src="https://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0&s=1"></script> 
    <script type="text/javascript"> 
     var mapPnl = null; 
     var refreshRate = 30000; 

     function SetMap() { 
      // Set the latitude value 
      var lat = document.getElementById("txtLatitude").value; 

      // Set the longitude value 
      var lng = document.getElementById("txtLongitude").value; 

      // Check if both of the latitude and longitude have been set 
      if (lng === "" | lat === "") { 
       alert("You need to input both Latitude and Longitude first."); 
       return; 
      } 

      // Set the zoom level 
      var ddlzoom = document.getElementById("ddlZoomLevel"); 
      var zoom = ddlzoom.options[ddlzoom.selectedIndex].value; 

      // Reset the map instance 
      map.SetCenter(new VELatLong(lat, lng)); 
      map.SetMapStyle(style); 
      map.SetZoomLevel(zoom); 
     } 

     function FindLoc() { 
      var loc = document.getElementById("txtLocation").value; 
      try { 
       // Call VEMap.Find method to find the location 
       map.Find(null, loc); 
      } catch (e) { 
       alert(e.message); 
      } 
     } 

     function SetStyle(s) { 
      if (s == "r") { 
       style = VEMapStyle.Road; 
      } 
      else { 
       style = VEMapStyle.Aerial; 
      } 
     } 

    </script> 
    <style type="text/css"> 
     .map { 
      position: absolute; 
      width: 960px;height:500px;border: #555555 2px solid; 
     } 
     .map-full { 
      position: absolute; 
      width: 99.7%; 
      margin-left: 1px!important; 
      height: 99.5%; 
      border: #555555 2px solid; 
     } 
    </style> 
    <link href="css/main.css" rel="stylesheet" type="text/css" /> 
    <link href="menu/menu.css" rel="stylesheet" type="text/css" /> 
    <script type="text/javascript"> 

    function isNumberKey(evt, ctlName) { 
     var charCode = (evt.which) ? evt.which : event.keyCode; 

     if ((charCode < 48 && charCode !== 36 && charCode !== 44 && charCode !== 46) || charCode > 57) 
     return false; 
     else { 
     var ctl = document.getElementById(ctlName); 
     var testStr = ctl.value + String.fromCharCode(charCode); 
     testStr = testStr.replace("$", ""); 
     testStr = testStr.replace(",", ""); 
     var regex = /^\d+(\.\d{0,2})?$/; 
     var output = regex.test(testStr); 
     return output; 
     } 
    } 

    function handleEnter(field, event) { 
     var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode; 
     if (keyCode === 13) { 
     var i; 
     for (i = 0; i < field.form.elements.length; i++) 
      if (field === field.form.elements[i]) 
      break; 
     i = (i + 1) % field.form.elements.length; 
     field.form.elements[i].focus(); 
     return true; 
     } 
     else 
     return true; 
    } 


    String.prototype.trim = function() { 
     return this.replace(/^\s+|\s+$/g, ""); 
    } 

    String.prototype.ltrim = function() { 
     return this.replace(/^\s+/, ""); 
    } 

    String.prototype.rtrim = function() { 
     return this.replace(/\s+$/, ""); 
    } 



    </script> 
    <link href="/css/preloader.css" rel="stylesheet" type="text/css" /> 
    <link href="/css/report-main.css" rel="stylesheet" type="text/css" /> 
    <link href="/css/sales-report-001.css" rel="stylesheet" type="text/css" /> 
    <link href="/css/maps.css" rel="stylesheet" type="text/css" /> 
    <link rel="stylesheet" type="text/css" href="/datepicker/css/uiall.css" /> 
    <script src="/js/json2.js" type="text/javascript"></script> 

</head>  
<body onload="mapPnl = document.getElementById('<%= pnlBingMap.ClientID %>');LoadMap();" style="width:100%!important;height:100%!important"> 
    <% if (Request.QueryString["corpId"] != null) 
     { %> 
    <form id="Form1" runat="server"> 
     <div class="content"> 
      <div id="preloader" style="display: none"> 
       <div id="status"> 
        <img src='images/status.gif' alt='' /><br /> 
        <span class="small-grey">Please wait</span> 
       </div> 
      </div> 
      <asp:HiddenField runat="server" ID="hfStartDate" /> 
      <asp:HiddenField runat="server" ID="hfFinishDate" /> 
      <asp:Label runat="server" ID="lblError" style="visibility:hidden;width:0px;height:0px;"></asp:Label> 
      <div id="timeDiv"></div>    
      <div> 
       <asp:Panel ID="pnlBingMap" CssClass="map-full" runat="server"> 
       </asp:Panel> 
      </div> 
     </div> 
    </form> 
    <% } %> 
</body> 
</html> 

是有一種方法可以從源頭上確定是什麼讓頁面顯示?如果沒有,我該如何調試IE來確定它爲什麼不顯示?

任何援助將不勝感激!

回答

1

看起來您正在使用Bing Maps版本7的地圖腳本URL,該地圖已退役並將很快關閉。您需要遷移到版本8.以下是遷移指南:https://social.technet.microsoft.com/wiki/contents/articles/34563.bing-maps-v7-to-v8-migration-guide.aspx

但是,看看您的代碼,看起來您使用的是版本7或版本8中不存在的版本6語法。版本7是完整的改寫。版本8與V7向後兼容約95%。這是從V6到V8的遷移指南:https://social.technet.microsoft.com/wiki/contents/articles/34568.bing-maps-v6-3-to-v8-migration-guide.aspx

相關問題