Bonjour,
J'utilise le jquery datatables avec server_processing, numericComma, columnFilter, FixedHeader et scroller !
J'aurais aimé que la fonction "search()" soit lancée uniquement après 300 millisecondes d'inactivité de la souris. En effet, si je bouge très rapidement la souris sur 10 lignes, datatables va me lancer 10 fois la fonction search(). Ceci ne va donc pas être esthétique !
J'ai testé avec setTimeout(search(sref), 300).
Mais ceci ne résout pas non plus mon problème,
car si je bouge encore ma souris à la va-vite,
après ces 300 millisecondes,
la fonction search(sref) s'effectuera quand même,
avec aussi le même souci d'esthétique !
Je chercherai plutôt de lancer cette fonction,
après 300 millisecondes d'inactivité (rapide) de la souris...
Mais ici, je ne trouve pas !
Pouvez-vous m'aider ?
D'avance merci.
Modifié par jytest (25 Mar 2013 - 13:39)
J'utilise le jquery datatables avec server_processing, numericComma, columnFilter, FixedHeader et scroller !
J'aurais aimé que la fonction "search()" soit lancée uniquement après 300 millisecondes d'inactivité de la souris. En effet, si je bouge très rapidement la souris sur 10 lignes, datatables va me lancer 10 fois la fonction search(). Ceci ne va donc pas être esthétique !
J'ai testé avec setTimeout(search(sref), 300).
Mais ceci ne résout pas non plus mon problème,
car si je bouge encore ma souris à la va-vite,
après ces 300 millisecondes,
la fonction search(sref) s'effectuera quand même,
avec aussi le même souci d'esthétique !
Je chercherai plutôt de lancer cette fonction,
après 300 millisecondes d'inactivité (rapide) de la souris...
Mais ici, je ne trouve pas !
Pouvez-vous m'aider ?
D'avance merci.
$(document).ready(function() {
url();
var oTable = $('#example').dataTable( {
"bDestroy": true,
"sScrollY": example,
"bFilter": false,
"bInfo": false,
"bScrollCollapse": true,
"BJQueryUI" : false,
"aoColumns": [
{ "sTitle": "comparer", "bSortable": false,
"sClass": "alignCenter", "bVisible": true },
{ "sTitle": "forme", "bSortable": true,
"sClass": "alignLeft", "bVisible": true },
{ "sTitle": "carat", "bSortable": true,
"sClass": "alignRight", "bVisible": true },
{ "sTitle": "taille", "bSortable": true,
"sClass": "alignCenter", "bVisible": true },
{ "sTitle": "couleur", "bSortable": true,
"sClass": "alignCenter", "bVisible": true },
{ "sTitle": "pureté", "bSortable": true,
"sClass": "alignCenter", "bVisible": true },
{ "sTitle": "poli", "bSortable": true,
"sClass": "alignCenter", "bVisible": (swColonne[11]==1)?true:false },
{ "sTitle": "sym", "bSortable": true,
"sClass": "alignCenter", "bVisible": (swColonne[12]==1)?true:false },
{ "sTitle": "prof", "bSortable": true,
"sClass": "alignRight", "bVisible": (swColonne[13]==1)?true:false },
{ "sTitle": "table", "bSortable": true,
"sClass": "alignRight", "bVisible": (swColonne[14]==1)?true:false },
{ "sTitle": "fluo", "bSortable": true,
"sClass": "alignCenter", "bVisible": (swColonne[15]==1)?true:false },
{ "sTitle": "prix/ct", "bSortable": true,
"sClass": "alignRight", "bVisible": (swColonne[16]==1)?true:false },
{ "sTitle": "colette", "bSortable": true,
"sClass": "alignCenter", "bVisible": (swColonne[17]==1)?true:false },
{ "sTitle": "Lg/lg", "bSortable": true,
"sClass": "alignRight", "bVisible": (swColonne[18]==1)?true:false },
{ "sTitle": "délai", "bSortable": true,
"sClass": "alignRight", "bVisible": true },
{ "sTitle": "certificat", "bSortable": true,
"sClass": "alignCenter", "bVisible": true },
{ "sTitle": "prix", "bSortable": true,
"sClass": "alignRight", "bVisible": true },
{ "sTitle": "détail", "bSortable": false,
"sClass": "alignLeft", "bVisible": true }
],
"sAjaxSource": "js/dt/chargementdata00.php" + argurl,
"bDeferRender": true,
"bServerSide": true,
"sDom": "frtiS",
"oScroller": {
"loadingIndicator": true
},
"oLanguage": {
"sLoadingRecords": "Chargement en cours...",
"sZeroRecords": "Aucun diamant n'a pu être trouvé !"
},
"sScrollX": "100%",
"sScrollXInner": coef,
"fnServerData": function ( sSource, aoData, fnCallback ) {
aoData.push( { "name": "more_data", "value": "my_value" } );
$.getJSON( sSource, aoData, function (json) {
maxref = json.iTotalRecords;
triref = json.iTotalDisplayRecords;
nbreference();
fnCallback(json)
} );
},
"aaSorting": [[ 16, "asc" ]]
} );
} );
$('#example tbody tr').live('mouseover', function () {
this.style.cursor='pointer';
colour = this.style.backgroundColor + '';
this.style.backgroundColor = '#EFE4EA';
this.style.color = '#9F3082';
var nTds = $('td', this);
sref = $(nTds[0]).children(0).attr('id');
sref = sref.substr(3);
search (sref);
} );
$('#example tbody tr').live('mouseout', function () {
this.style.backgroundColor = colour;
this.style.color = '#666666';
} );
function search(id) {
oRecord = id;
var requete = creerRequete();
var url = "php/ajaxphp_post.php";
requete.open("POST", url, true);
requete.onreadystatechange = function() {
detailon(requete);
}
requete.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
requete.send("item_id="+escape(oRecord)+"&opti="+nbsuppl);
}
Modifié par jytest (25 Mar 2013 - 13:39)