javascript – Google地图自动填充始终选择第一项
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – Google地图自动填充始终选择第一项,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2503字,纯文字阅读大概需要4分钟。
内容图文
![javascript – Google地图自动填充始终选择第一项](/upload/InfoBanner/zyjiaocheng/771/ee5159f802bb4aaca024feffc9b8750f.jpg)
参见英文答案 > Google maps Places API V3 autocomplete – select first option on enter 16个
我正在使用Google Maps Places V3自动填充功能.我希望有一个功能,如果用户开始在搜索字段中输入,则会自动选择自动完成下拉列表中的第一个项目.
类似于Facebook中的搜索功能.
我已经在这两个主题的帮助下更新了Google地图自动完成功能:
> Google Autocomplete – enter to select
> Google maps Places API V3 autocomplete – select first option on enter
但我找不到这个新问题的解决方案….
我在这里发布了我的代码:
http://jsfiddle.net/Chazz09/YfPv3/5/
$(document).ready(function(){
var pac_input = document.getElementById('searchfield');
// prevents enter key to submit form//
$('#searchfield').keydown(function (e) {
if (e.which == 13 && $('.pac-container:visible').length) return false;
});
// prevents enter key to submit form//
(function pacSelectFirst(input){
// store the original event binding function
var _addEventListener = (input.addEventListener) ? input.addEventListener : input.attachEvent;
function addEventListenerWrapper(type, listener) {
// Simulate a 'down arrow' keypress on hitting 'return' when no pac suggestion is selected,
// and then trigger the original listener.
if (type == "keydown") {
var orig_listener = listener;
listener = function (event) {
var suggestion_selected = $(".pac-item.pac-selected").length > 0;
if (event.which == 13 && !suggestion_selected) {
var simulated_downarrow = $.Event("keydown", {keyCode:40, which:40})
orig_listener.apply(input, [simulated_downarrow]);
}
orig_listener.apply(input, [event]);
};
}
// add the modified listener
_addEventListener.apply(input, [type, listener]);
}
if (input.addEventListener)
input.addEventListener = addEventListenerWrapper;
else if (input.attachEvent)
input.attachEvent = addEventListenerWrapper;
})(pac_input);
$(document).ready(function()
{
function initialize() {
var options = {
types: ['geocode'],
componentRestrictions: {country: "fr"}
};
var autocomplete = new google.maps.places.Autocomplete(pac_input, options);
}
google.maps.event.addDomListener(window, 'load', initialize);
});
});
解决方法:
这个怎么样?
$("input").keypress(function(event){
if(event.keyCode == 13 || event.keyCode == 9) {
$(event.target).blur();
if($(".pac-container .pac-item:first span:eq(3)").text() == "")
firstValue = $(".pac-container .pac-item:first .pac-item-query").text();
else
firstValue = $(".pac-container .pac-item:first .pac-item-query").text() + ", " + $(".pac-container .pac-item:first span:eq(3)").text();
event.target.value = firstValue;
} else
return true;
});
内容总结
以上是互联网集市为您收集整理的javascript – Google地图自动填充始终选择第一项全部内容,希望文章能够帮你解决javascript – Google地图自动填充始终选择第一项所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。