小老弟想模仿一个简易的百度搜索智能提示的效果,不料跨域请求一直不成功,还请各位老哥指点一二!
代码如下:
Document
*{margin: 0;padding: 0;}
ul{list-style-type: none;border: 1px solid #333;width: 252px;border-top: none;display: none;}
.box{margin: 100px auto;text-align: center;width: 250px;position: relative;}
input{outline: none;height: 30px;width: 250px;}
ul li{text-align: left;padding: 4px;}
dfsfkjdfsfkj
$("ul").on("mouseover","li",function(){
$("ul li").css({background: "none"});
$(this).css({
background: "#ddd"
});
}).on("click","li",function(){
var value = $(this).html();
$("input").val(value);
$("ul").hide();
});
$("input").on("keyup",function(){
$.ajax({
type: "GET",
url: "",
data: {},
dataType: "jsonp",
jsonp: "callback",
success: function(data){
console.log(data);
},
error: function(){
alert("通信错误");
}
});
if($(this).val() === ""){
$("ul").hide();
} else{
$("ul").show();
}
})
运行后有两个问题,第一我找不到百度搜索的api,即我不知道url改写什么。。。
第二我每次触发ajax请求的话都会有这样的报错
还请各位老哥不吝赐教,不胜感激!
现在我把js改成这样:
$("input").on("keyup",function(){
var value = $(this).val();
$.ajax({
type: "GET",
// url: "/s?wd=" + value + "&rsv_spt=1&rsv_iqid=0xdb616ebd0001ac06&issp=1&f=8&rsv_bp=0&rsv_idx=2&ie=utf-8&tn=baiduerr&rsv_enter=1&rsv_sug3=4&rsv_sug1=3&rsv_sug7=100&rsv_sug2=0&inputT=602&rsv_sug4=1700",
// data: {}
url: "/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=" + value,
dataType: "jsonp",
// jsonp: "callback",
success: function(data){
alert("done");
},
error: function(){
alert("通信错误");
}
});
if($(this).val() === ""){
$("ul").hide();
} else{
$("ul").show();
}
});
还是会报错
但是当我在输入狂输入d,在preview里面已经可以看到数据了!
现在就是怎么解决这个报错呢?