fonction jQuery exécuter sur le Bouton et Cliquez sur Entrée/Retour (à clé)
Je suis en train de créer un peu la boîte de recherche qui vous permet de rechercher Twitter basé sur le mot clé que vous entrez dans le champ de saisie. Alors que c'est un travail, il ne fonctionne que si vous appuyez sur le bouton "Soumettre". Je tiens également à être en mesure d'appuyer sur la touche Entrée ou Retour pour lancer la recherche. J'ai essayé en utilisant le .remplir la fonction et de l'habillage de mon entrée autour d'un élément de formulaire sans succès. Aucune information serait grandement apprécié!
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
$(document).ready(function(){
function(data) {
$('#startSearch').click(function(){
$('#tweets .results').remove();
var searchTerm = 'http://search.twitter.com/search.json?q=' + $('#twitterSearch').val() + '&callback=?'
$.getJSON(searchTerm, function(data) {
$.each(data.results, function() {
$('<div class="results"></div>')
.hide()
.append('<a class="userPicLink" href="http://twitter.com/' + this.from_user + '">' + '<img class="userImg" src="' + this.profile_image_url + '">' + '</a>')
.append('<span class="userName">' + '<a href="http://twitter.com/' + this.from_user + '">' + this.from_user + '</span>')
.append('<span class="userText">' + this.text + '</span>')
.append('<time class="textTime">' + relTime(this.created_at) + '</time>')
.appendTo('#tweets')
.fadeIn();
});
});
</script>
<body>
<label id="searchLabel" for="twitterSearch">Search</label>
<input type="search" list="searchSugg" id="twitterSearch" placeholder="css3 animation" required aria-required="true">
<input id="startSearch" type="submit">
<datalist id="searchSugg">
<option value="css3 mulitple backgrounds">
<option value="html5 video">
<option value="responsive web design">
<option value="twitter api">
</datalist>
<div id="tweets">
</div>
</body>
Si vous utilisez un
j'ai essayé cette méthode mais j'ai été infructueuses. j'ai d'abord enveloppé éléments HTML dans un
<form>
élément, vous allez capturer le return
/enter
clé automatiquement et être en mesure d'utiliser le $.submit()
gestionnaire, mais je suppose que vous êtes à l'aide d'AJAX?j'ai essayé cette méthode mais j'ai été infructueuses. j'ai d'abord enveloppé éléments HTML dans un
<form action="">
et dans mon jQuery, j'ai utilisé $('#myFormsID').submit(function(){
. le résultat ne semble pas faire quoi que ce soit. j'ai fait à ce sujet dans le mauvais sens?OriginalL'auteur Alvin Jones | 2012-06-01
Vous devez vous connecter pour publier un commentaire.
EDIT: Comme Spudley suggéré "l'un des principaux points de l'utilisation de jQuery est d'arrêter de vous avoir à utiliser les déclencheurs d'événement incorporé dans le code HTML" pour une meilleure solution serait
OU - proposition Précédente:
keydown()
événement à la place?bien que j'aime vraiment l'idée derrière Cyril solution, quand j'ai essayé de mettre en œuvre l'ajout d'une fonction, il a rompu la fonctionnalité complètement. Aucune de ces approches ne semblait fonctionner. Je manque quelque chose ici?
Je la renvoie... la solution fonctionne! Je vous remercie beaucoup pour l'aide.
OriginalL'auteur Cyril Tourist
Si vous voulez le lieu de l'événement avec pas envahissants js, alors vous pouvez aussi utiliser ce système:
aussi, si vous avez un bouton de soumission, c'est une alternative, #élément doit être le champ de texte où vous voulez attraper l'événement.
référence à ceci: réponse
OriginalL'auteur Andrea V. Abbondanza
Essayer de créer des auditeurs pour les deux clés de la presse et de clics de souris.
En action
http://codepen.io/scottyzen/pen/akWPJd
OriginalL'auteur Scottyzen