您好我正在创建一个简单的crossrider扩展,它从php获取数据并将其显示在扩展中。该代码适用于Chrome和FireFox,但扩展程序在IE(v9和v11)中根本不显示。以下是我使用的代码:
appAPI.ready(function($) {
var sidebar = null;
$.ajax({
url:"http://localhost/getSupportLinks.php",
type: 'POST',
data: {
"currentUrl":document.URL
},
dataType:'text',
success:function(result){
$(".crossrider-sidebar-"+appAPI.appInfo.id+"-container")
.remove();
if((result+'').length >0)
{
//$(".crossrider-sidebar-"+appAPI.appInfo.id+"-container").remove();
//calculate height of toolbar base on number of icons
var sbrHgt = (((result.split("img src").length - 1)*55)+15) + 'px';
//initialize side bar
sidebar = new appAPI.sidebar({
position:'right', // Sidebar position (right, left, top, bottom) - currently only right is supported
//url: '',
html:result, // HTML for the sidebar (will be ignored if iframe URL is spesified as above)
opacity:1.0, // Sidebar's opacity
width:'120px', // Sidebar width (can be px or %)
height:sbrHgt, // Sidebar height (can be px or %)
//preloader:true, // Show spinning loader until content has loaded (apply only if url parameter is specified)
sticky:true, // If true sidebar will be sticky and ignore user scroll,
// false will make the sidebar to disapear if user scrolls down
// default:true
slide:150,
theme:'default',
openAction:['click', 'mouseover']
});
//show side
sidebar.show();
}
},
error: function(xhr, status, error) {
// var err = eval("(" + xhr.responseText + ")");
alert("Error : "+err);
// alert("Error status : "+status);
// alert("Error message on PHP call : "+error);
}
});
});
代码在之前正确显示,并且扩展程序在本周仅在IE上停止显示。我甚至创建了一个单独的项目,只显示一个简单的警报,甚至不起作用。我想知道的是:
谢谢你的帮助
答案 0 :(得分:2)
出于这个原因,请使用Crossrider提供的跨浏览器appAPI.request.get方法。将$ .ajax转换为使用它很简单,但是如果你需要一只手,请告诉我。
[披露:我是Crossrider员工]