Connexion

Récupérer mon mot de passe

Derniers sujets
» Socrate et la maïeutique "histoire"
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Aujourd'hui à 7:34 par Quad Daniel

» les Histoires Belge
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Hier à 7:34 par Quad Daniel

» histoire du Jour sans fin
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Lun 24 Juin 2019 - 14:04 par Quad Daniel

» Coca-Cola (histoire)
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Lun 24 Juin 2019 - 9:33 par bildil62

» Sœur Mathématiques et Sœur Logique
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Sam 22 Juin 2019 - 15:59 par bildil62

» Les deux bons potes "histoire"
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Ven 21 Juin 2019 - 19:45 par soleda

» *RESOLU*[PhpBB2] Onglet sur page d’accueil
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Mer 19 Juin 2019 - 16:38 par Milouze14

» Le spationaute belge
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Mer 19 Juin 2019 - 16:26 par Milouze14

» *RESOLU*[PhpBB2] Aide mise en forme page d’accueil merci
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Dim 16 Juin 2019 - 8:33 par Milouze14

» *RESOLU*[PhpBB2] Chatbox / Réinitialiser
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Ven 14 Juin 2019 - 19:55 par Milouze14

» *RESOLU*[PhpBB2] Bloquer les IP
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Jeu 13 Juin 2019 - 18:36 par Milouze14

» Les réseaux sociaux
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Mer 12 Juin 2019 - 7:51 par Romain

» [PhpBB2] Barre navigation supplémentaire
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Dim 9 Juin 2019 - 19:32 par Milouze14

» *RESOLU*[Invision] Réduction image avec clic agrandissement
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Sam 8 Juin 2019 - 19:07 par Milouze14

» Histoire de Blondes Sans Fin
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Sam 8 Juin 2019 - 19:01 par Quad Daniel

» *RESOLU*[PhpBB3] Interdiction de citer le dernier message
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Ven 7 Juin 2019 - 19:04 par Milouze14

» Règlement de l'entraide Forumactif
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Ven 7 Juin 2019 - 14:16 par jakes

» *RESOLU*[PhpBB2] [Toutes versions] Activer la prévisualisation directe
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Mer 5 Juin 2019 - 18:52 par Milouze14

» [PHPBB3] Afficher une réponse automatique style staff
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Lun 3 Juin 2019 - 17:35 par Milouze14

» *RESOLU*[PhpBB2] Changer un message quand un membre ne peut pas répondre à un sujet
*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur Clock-10Jeu 30 Mai 2019 - 19:38 par Milouze14

*RESOLU* [PHPBB2] Tutoriel @tag | Ange Tuteur

Voir le sujet précédent Voir le sujet suivant Aller en bas

avatar
ThunderTB
Milouzien

MessageThunderTB le Ven 24 Aoû 2018 - 18:05

Salut Phil j'espère que tu va bien , je viens te voir aujourd'hui puisque j'ai un souci pour l'installation d'un tuto
qui me donne un mal de tête :P donc je viens te voir en espérant que tu puisse m'aider .

il semblerais que plusieurs est le même problème c'est à dire un message d'erreur lorsque j'applique le tag "@" et je peux voir
tu la installé ici et il fonctionne .
Tuto : https://www.milouze14.com/t30501-toutes-versions-auto-suggestion-des-membres-sur-les-tags?highlight=auto

Donc la question que je me pose vraiment est celle-ci , est-ce que cette astuce est possible sur PHPBB2 ?
ou c'est un pluggin exclusif à edge ? Merci de ta réponse et de ton aide .


Dernière édition par ThunderTB le Dim 26 Aoû 2018 - 5:09, édité 1 fois
Milouze14
Milouze14
Fondateur

MessageMilouze14 le Ven 24 Aoû 2018 - 19:36

Hello Franck,

je vais bien merci,hum les vacances se terminent pleure .

Donc la question que je me pose vraiment est celle-ci , est-ce que cette astuce est possible sur PHPBB2 ?

Oui elle est valide mais sur des templates d'origine.


il semblerais que plusieurs est le même problème c'est à dire un message d'erreur lorsque j'applique le tag "@" et je peux voir tu la installé ici et il fonctionne .

Hum quelle genre d'erreur s'il te plait ?

As tu modifié ce template memberlist_body
Affichage/Templates/Général/memberlist_body
avatar
ThunderTB
Milouzien

MessageThunderTB le Sam 25 Aoû 2018 - 5:15

Salut Phil merci pour ta réponse , et oui les vacances ce termine et l'été aussi .

Mon message d'erreur le voici : https://i.servimg.com/u/f84/16/67/19/10/milhou11.png

Donc en gros peut importe le nom que je vais entré le même message d'erreur apparait
il ne trouve aucun membres sur mon forum .
Milouze14
Milouze14
Fondateur

MessageMilouze14 le Sam 25 Aoû 2018 - 7:08

Hello Franck,


@Milouze14 a écrit:Hello Franck,
as tu modifié ce template memberlist_body
Affichage/Templates/Général/memberlist_body


et pour le template ?
avatar
ThunderTB
Milouzien

MessageThunderTB le Sam 25 Aoû 2018 - 7:47

Code:
<br>
<form action="{S_MODE_ACTION}" method="get">
 
<table id="M14_Members"cellspacing="0" cellpadding="5" border="0" align="center" width="100%">
 <tr>
 <th  nowrap="nowrap">{L_ORDER_OR_SELECT}</th>
 </tr>
 <tr>
 <td>
 <table id="M14_Members"cellspacing="2" cellpadding="0" border="0" align="center" class="genmed">
 <tr>
<td width="100%">Pseudo du membre!
  <input type="text" class="post" name="username" maxlength="25" size="20" value="{L_USER_SELECT_VALUE}"placeholder="Tapez ici le Pseudo ici" />     
 {L_SELECT_SORT_METHOD} {S_MODE_SELECT}     
 {L_ORDER} {S_ORDER_SELECT}     
 {S_HIDDEN_SID}
 <input class="liteoption" type="submit" name="submit" value="{L_SUBMIT}"/></td>
 </tr>
 </table>
 </td>
 </tr>
</table>

</form>

<div id="M14_Members_bloc">
<table id="M14_Members" width="100%" border="0" cellspacing="1" cellpadding="0"style="border:none !important;">
 
 <!-- BEGIN memberrow -->
 <tr>

<script>
$(function(){
$('.nav b').attr('title','Onglet actif');
$('a[href^="/memberlist"]').attr('title','Aller à cette page');
$('img[alt="Suivant"]').closest('a').attr('title','Page suivante');
$('img[alt="Précédent"]').closest('a').attr('title','Page précédente');
$('img.i_icon_pm').replaceWith('Envoyer un M.P');
$('a[title="Visiter le site web du posteur"] img').replaceWith('Site Web');
$('a[onmousedown^="createPagination"]').remove();
$('.M14_Members a.M14_User ').attr('title','Afficher son profil').click(function(){
$(this).next().slideDown();
$('p').click(function(){
  $(this).closest('div').slideUp();
  });
});});
</script>
<script>
$(function(){if(_userdata["user_id"] == -1)
$(function(){
$('#M14_gen.gen ,#M14_gen.gensmall').remove();
$('.M14_Members').find('a').removeAttr('title');
$('.M14_Members').attr('title','Vous devez être connecté ou enregistrez vous pour accéder aux fonctions ');
$('.M14_members_login , #M14_gen_Invite').show();
$('.M14_members_login a[href="/login"]').attr('title','Connectez vous');
$('.M14_members_login a[href="/register"]').attr('title','Enregistrez vous');
$('a[target="_blank"]').removeAttr('href');
})});
</script>


<div class="M14_Members">
 
<a class="M14_User">{memberrow.USERNAME}</a>
  <div style="display:none;">
<p style="float:right;"title="Fermer">X</p>   
  <span class="avatar mini">{memberrow.AVATAR_IMG}</span><br />
<!-- BEGIN switch_td_group -->
<span class="gen">{memberrow.GROUPS}</span><br />
<!-- END switch_td_group -->
<span class="gen">{memberrow.INTERESTS}</span><br />
<span class="gensmall">Date d'inscription</span><br />
<span id="M14_gen"class="gensmall">{memberrow.JOINED}</span>
<span id="M14_gen_Invite"class="gensmall"style="display:none;color:darkred !important;">Non disponible</span><br />
<span class="gensmall">Dernière visite</span><br />
<span id="M14_gen"class="gensmall">{memberrow.LASTVISIT}</span>
<span id="M14_gen_Invite"class="gensmall"style="display:none;color:darkred !important;">Non disponible</span><br  />
<span class="gen">Message(s)</span><br />
<span id="M14_gen"class="gen">{memberrow.POSTS}</span>
<span id="M14_gen_Invite"class="gensmall"style="display:none;color:darkred !important;">Non disponible</span><br />
{memberrow.PM_IMG} <br />
    <a href="{memberrow.U_VIEWPROFILE}"title="Voir le profil">Voir son profil</a><br />
{memberrow.WWW_IMG}&nbsp;<br />   
    <span class="M14_members_login"style="display:none;">
      <a href="/login">Connectez vous</a> <br />
      <a href="/register">Enregistrez vous</a>
</span>
</div>  </div></tr>
 <!-- END memberrow -->
 <!-- BEGIN switch_no_user -->
 <tr>
<td class="catBottom" colspan="{switch_no_user.COLSPAN_NUMBER}" height="28" align="center">
  <span class="gensmall">{switch_no_user.L_NO_USER}</span></td>
 </tr>
 <!-- END switch_no_user -->
</table>
<br />
<!-- BEGIN switch_pagination -->
<table id="M14_Members"width="100%" border="0" cellspacing="0" cellpadding="0">
 <tr>
 <td><span class="nav">{PAGE_NUMBER}</span></td>
 <td align="right"><span class="nav">{PAGINATION}</span></td>
       
 </tr>
</table>
<br />
<!-- END switch_pagination -->
 
</div>

Voilà pour le template , il est en effet modifier quelque peu .
Milouze14
Milouze14
Fondateur

MessageMilouze14 le Sam 25 Aoû 2018 - 8:29

Hum,
tu peux tester avec le script d'Ange Tuteur modifié:
Code:
!window.fa_mentionner && !/\/privmsg|\/profile\?mode=editprofile&page_profil=signature/.test(window.location.href) && $(function(){$(function(){
              'SCEDITOR @HANDLE AUTO-SUGGEST';
              'DEVELOPED BY ANGE TUTEUR';
              'NO DISTRIBUTION WITHOUT CONSENT OF THE AUTHOR';
              'ORIGIN : http://fmdesign.forumotion.com/t943-auto-suggest-mentions-as-you-type#19157';
              var container = $('.sceditor-container')[0],
                  text_editor = document.getElementById('text_editor_textarea'),
                  frame,
                  instance;
              if (container && text_editor) {
                frame = $('iframe', container);
                instance = $(text_editor).sceditor('instance');
                window.fa_mentionner = {
                  suggest_delay : 100, // delay before suggestions show up (100ms)
                  // language presets
                  lang : {
                    placeholder : 'Recherche...',
                    not_found : 'Utilisateur non trouvé'
                  },
                  // colors of the suggestion popup
                  color : {
                          font : '#333',
                    hover_font : '#FFF',
                    error_font : '#F00',
                          background : '#FFF',
                    hover_background : '#69C',
                    border : '#CCC',
                    shadow : 'rgba(0, 0, 0, 0.176)'
                  },
                  // sceditor instance and rangeHelper
                  instance : instance,
                  rangeHelper : instance.getRangeHelper(),
                  // cached nodes for listening and modifications
                  frame : frame[0],
                  body : frame.contents().find('body')[0],
                  textarea : $('textarea', container)[0],
                  // faux textarea and suggestion list
                  faux_textarea : $('<div id="faux_text_editor" />')[0], // helps us mirror the cursor position in source mode
                  list : $('<div id="fa_mention_suggestions" style="position:absolute;" />')[0],
                  // version specific selectors
                  selectors : $('.bodyline')[0] ? ['a.gen[href^="/u"]', '.avatar.mini a'] :
                              document.getElementById('ipbwrapper') ? ['.membername', '.mini-avatar'] :
                              null,
                  // adjusts the scroll position of the faux textarea so the caret stays in line
                  adjustScroll : function() {
                    fa_mentionner.faux_textarea.scrollTop = fa_mentionner.textarea.scrollTop;
                  },
                  // updates the content in the faux textarea
                  updateFauxTextarea : function(active, key) {
                    if (key == 16) { // 16 = SHIFT
                      return; // return when specific keys are pressed
                    }
                    // clear suggestion queue when suggestions aren't active
                    if (active != true) {
                      fa_mentionner.clearSuggestions();
                    } else {
                      return; // return when interactive keys are pressed while suggesting ; up, down, enter
                    }
                    // use another method if in WYSIWYG mode
                    if (!fa_mentionner.instance.inSourceMode()) {
                      key != 32 ? fa_mentionner.searchWYSIWYG() : fa_mentionner.clearSuggestions();
                      return;
                    }
                    var val = fa_mentionner.instance.val(),
                        range = 0,
                        selection,
                        faux_caret,
                        username;
                    // get the position of the caret
                    if (document.selection) {
                      selection = document.selection.createRange();
                      selection.moveStart('character', -fa_mentionner.textarea.length);
                      range = selection.text.length;
                    } else if (fa_mentionner.textarea.selectionStart || fa_mentionner.textarea.selectionStart == 0) {
                      range = fa_mentionner.textarea.selectionStart;
                    }
                    // set the position of the caret
                    val = val.slice(0, range) + '{FAUX_CARET}' + val.slice(range, val.length);
                    // parse and sanitize the faux textarea content
                    $(fa_mentionner.faux_textarea).html(
                      val.replace(/</g, '<')
                        .replace(/>/g, '>')
                        .replace(/@"(.*?)"|@(.*?)(?:\s|\r|\n|$)/g, function(M, $1, $2) {
                          var lastChar = M.substr(-1),
                              name = ($1 || $2 || '').replace(/\{FAUX_CARET\}|"/g, '');
                          return '<a href="#' + name + '">' + (/\s|\r|\n/.test(M) ? M.slice(0, M.length - 1) + '</a>' + lastChar : M + '</a>');
                        })
                        .replace(/\{FAUX_CARET\}/, '<span id="faux_caret" style="position:absolute;margin-left:-3px;">|</span>')
                    );
                    faux_caret = document.getElementById('faux_caret');
                    // mentions are parsed as <a>nchors, so when the faux caret is inside one we'll show some suggestions
                    if (faux_caret && faux_caret.parentNode.tagName == 'A') {
                      fa_mentionner.value = val;
                      fa_mentionner.delay = window.setTimeout(function() {
                        fa_mentionner.suggest(faux_caret.parentNode.href.replace(/.*?#(.*)/, '$1'), $(faux_caret).offset());
                      }, fa_mentionner.suggest_delay);
                    }
                    fa_mentionner.adjustScroll();
                  },
                  // search for active mentions in wysiwyg mode
                  searchWYSIWYG : function() {
                    var selected = fa_mentionner.rangeHelper.cloneSelected(),
                        mentions = selected.startContainer.data && selected.startContainer.data.match(/(@".*?")|(@.*?)(?:\s|\r|\n|$)/g),
                        offset,
                        offset_marker,
                        hit,
                        i;
                        console.log(mentions);
                    if (mentions && mentions[0]) {
                      // clean up whitespace
                      for (i in mentions) {
                        mentions[i] = mentions[i].replace(/\s$/g, '');
                      }
                      // search for the mention that's currently being modified
                      for (i in mentions) {
                        if (!fa_mentionner.wysiwyg_mentions || (mentions[i] != fa_mentionner.wysiwyg_mentions[i])) {
                          hit = true;
                          fa_mentionner.delay = window.setTimeout(function() {
                            fa_mentionner.rangeHelper.insertMarkers(); // insert markers to help get the caret offset
                            offset = $(fa_mentionner.frame).offset();
                            offset_marker = $('#sceditor-end-marker', fa_mentionner.body).show().offset();
                            // add the marker offsets to the iframe offsets
                            offset.left += offset_marker.left;
                            offset.top += offset_marker.top - fa_mentionner.body.scrollTop;
                            fa_mentionner.suggest(mentions[i].slice(1).replace(/^"|"$/g, ''), offset, true);
                            fa_mentionner.wysiwyg_active = mentions[i]; // save the active mention for later use in finish()
                          }, fa_mentionner.suggest_delay);
                          break;
                        }
                      }
                      // hide the suggestion list if there's no newly modified mentions
                      if (!hit) {
                        fa_mentionner.list.style.display = 'none';
                        fa_mentionner.focused = null;
                      }
                      fa_mentionner.wysiwyg_mentions = mentions; // update the list of mentions
                    }
                  },
                  // suggest a list of users based on the passed username
                  suggest : function(username, offset, wysiwyg) {
                    // insert the suggestion list to show that it's searching
                    fa_mentionner.list.innerHTML = '<span class="fam-info">' + fa_mentionner.lang.placeholder + '</span>';
                    $(fa_mentionner.list).css({
                      left : offset.left + 'px',
                      top : offset.top + 'px',
                      display : 'block',
                      overflowY : 'auto'
                    });
                    document.body.appendChild(fa_mentionner.list);
                    // send a query request to the memeberlist to find users who match the typed username
                    fa_mentionner.request = $.get('/memberlist?change_version=prosilver=' + username, function(d) {
                      fa_mentionner.request = null;
                      var suggestion = $(fa_mentionner.selectors ? fa_mentionner.selectors[0] : '.avatar-mini a', d),
                          ava = fa_mentionner.selectors ? $(fa_mentionner.selectors[1], d) : null,
                          i = 0,
                          j = suggestion.length,
                          name;
                      fa_mentionner.list.innerHTML = '';
                      if (j) {
                        for (; i < j; i++) {
                          name = $(suggestion[i]).text().replace(/^\s+|\s+$/g, '');
                          fa_mentionner.list.insertAdjacentHTML('beforeend',
                            '<a href="javascript:fa_mentionner.finish(\'' + name.replace(/'/g, '\\\'') + '\', ' + wysiwyg + ');" class="fa_mention_suggestion">'+
                              '<img class="fa_suggested_avatar" src="' + $(fa_mentionner.selectors ? ava[i] : suggestion[i]).find('img').attr('src') + '"/>'+
                              '<span class="fa_suggested_name">' + name + '</span>'+
                            '</a>'
                          );
                        }
                        // change overflowY property when it exceeds 7 suggestions -- prevents unsightly scroll bug
                        fa_mentionner.list.style.overflowY = j > 7 ? 'scroll' : 'auto';
                        // update the focused suggestion and scroll it into view
                        fa_mentionner.list.firstChild.className += ' fam-focus';
                        fa_mentionner.focused = fa_mentionner.list.firstChild;
                        fa_mentionner.scrollSuggestions();
                      } else {
                        fa_mentionner.list.innerHTML = '<span class="fam-info" style="color:' + fa_mentionner.color.error_font + ';">' + fa_mentionner.lang.not_found + '</span>';
                      }
                    });
                  },
                  // kill the suggestion timeout while typing persists
                  clearSuggestions : function() {
                    if (fa_mentionner.delay) {
                      window.clearTimeout(fa_mentionner.delay);
                      fa_mentionner.delay = null;
                      fa_mentionner.list.style.display = 'none';
                      fa_mentionner.focused = null;
                    }
                    if (fa_mentionner.request) {
                      fa_mentionner.request.abort();
                      fa_mentionner.request = null;
                    }
                  },
                  // finish the username
                  finish : function(username, wysiwyg) {
                    var mention, index, i;
                    // hide and clear suggestions
                    fa_mentionner.clearSuggestions();
                    fa_mentionner.focused = null;
                    fa_mentionner.list.style.display = 'none';
                    if (!wysiwyg) {
                      fa_mentionner.value = fa_mentionner.value.replace(/(?:@".[^"]*?\{FAUX_CARET\}.*?"|@\{FAUX_CARET\}.*?(\s|\n|\r|$)|@.[^"\s]*?\{FAUX_CARET\}.*?(\s|\n|\r|$))/, function(M, $1, $2) {
                        mention = '@"' + username + '"';
                        return '{MENTION_POSITION}' + ( $1 ? $1 : $2 ? $2 : '' );
                      });
                      // get the index where the mention should be
                      index = fa_mentionner.value.indexOf('{MENTION_POSITION}');
                      fa_mentionner.value = fa_mentionner.value.replace('{MENTION_POSITION}', '');
                      // save current scroll position for application after the value has been updated
                      fa_mentionner.scrollIndex = fa_mentionner.textarea.scrollTop;
                      // update the textarea with the completed mention
                      fa_mentionner.instance.val('');
                      fa_mentionner.instance.insert(fa_mentionner.value.slice(0, index) + mention, fa_mentionner.value.slice(index, fa_mentionner.value.length));
                      // restore the scroll position for the textareas
                      fa_mentionner.textarea.scrollTop = fa_mentionner.scrollIndex;
                      fa_mentionner.adjustScroll();
                      // update the fake textarea
                      fa_mentionner.updateFauxTextarea();
                    } else {
                      // save the caret range in WYSIWYG so we can restore it after replacing the HTML
                      fa_mentionner.rangeHelper.saveRange();
                      fa_mentionner.body.innerHTML = fa_mentionner.body.innerHTML.replace(new RegExp(fa_mentionner.wysiwyg_active.replace(/[.*+?^${}()|[\]\\]/g, "\\$&") + '(<span.*?id="sceditor-end-marker".*?>)'), '@"' + username + '"$1');
                      fa_mentionner.body.focus();
                      fa_mentionner.rangeHelper.restoreRange();
                      // update the wysiwyg mention array so no new suggestions appear
                      for (i in fa_mentionner.wysiwyg_mentions) {
                        if (fa_mentionner.wysiwyg_mentions[i] == fa_mentionner.wysiwyg_active) {
                          fa_mentionner.wysiwyg_mentions[i] = '@"' + username + '"';
                          break;
                        }
                      }
                    }
                  },
                  // scroll the selected suggestion into view
                  scrollSuggestions : function() {
                    $(fa_mentionner.list).scrollTop(
                      (
                        $(fa_mentionner.focused).offset().top -
                        $(fa_mentionner.list).offset().top +
                        $(fa_mentionner.list).scrollTop()
                      ) -
                      (26 * 3) // 26 = the height of the suggestions, so display 3 suggestions above while scrolling
                    );
                  }
                };
                // get computed styles for the textarea and apply them to the faux textarea
                for (var css = window.getComputedStyle(fa_mentionner.textarea, null), i = 0, j = css.length, str = ''; i < j; i++) {
                  str += css[i] + ':'  + css.getPropertyValue(css[i]) + ';';
                }
                // add styles to the head
                $('head').append('<style type="text/css">'+
                  '#faux_text_editor {' + str + '}'+
                  '#faux_text_editor { position:absolute; left:0; bottom:0; z-index:-1; visibility:hidden; display:block; overflow-y:auto; }'+
                  '#fa_mention_suggestions { color:' + fa_mentionner.color.font + '; font-size:10px; font-family:arial, verdana, sans-serif; background:' + fa_mentionner.color.background + '; border:1px solid ' + fa_mentionner.color.border + '; margin-top:20px; z-index:999; max-height:182px; overflow-x:hidden; box-shadow:0 6px 12px ' + fa_mentionner.color.shadow + '; }'+
                  'a.fa_mention_suggestion, .fam-info { color:' + fa_mentionner.color.font + '; height:26px; line-height:26px; padding:0 3px; display:block; white-space:nowrap; cursor:pointer; }'+
                  'a.fa_mention_suggestion.fam-focus { color:' + fa_mentionner.color.hover_font + '; background:' + fa_mentionner.color.hover_background + '; }'+
                  '.fa_suggested_avatar { height:20px; width:20px; vertical-align:middle; margin-right:3px; }'+
                '</style>');
                // insert faux textarea into document
                fa_mentionner.textarea.parentNode.insertBefore(fa_mentionner.faux_textarea, fa_mentionner.textarea);
                // apply event handlers
                fa_mentionner.textarea.onclick = fa_mentionner.updateFauxTextarea;
                fa_mentionner.textarea.onscroll = fa_mentionner.adjustScroll;
                // update the faux textarea on keyup
                fa_mentionner.instance.keyUp(function(e) {
                  if (fa_mentionner.focused && e && (e.keyCode == 13 || e.keyCode == 38 || e.keyCode == 40)) {
                    fa_mentionner.updateFauxTextarea(true, e.keyCode);
                    return false;
                  } else {
                    fa_mentionner.updateFauxTextarea(false, e.keyCode);
                  }
                });
                // key events for the suggested mentions
                $([document, fa_mentionner.body]).on('keydown', function(e) {
                  var that = e.target;
                  if (fa_mentionner.focused && e && e.keyCode && (that.tagName == 'TEXTAREA' || that.tagName == 'BODY')) {
                    // move selection down
                    if (e.keyCode == 40) {
                      var next = fa_mentionner.focused.nextSibling;
                      if (next) {
                        $(fa_mentionner.focused).removeClass('fam-focus');
                        next.className += ' fam-focus';
                        fa_mentionner.focused = next;
                        fa_mentionner.scrollSuggestions();
                      }
                      return false;
                    }
                    // move selection up
                    if (e.keyCode == 38) {
                      var prev = fa_mentionner.focused.previousSibling;
                      if (prev) {
                        $(fa_mentionner.focused).removeClass('fam-focus');
                        prev.className += ' fam-focus';
                        fa_mentionner.focused = prev;
                        fa_mentionner.scrollSuggestions();
                      }
                      return false;
                    }
                    // apply selection
                    if (e.keyCode == 13) {
                      fa_mentionner.focused.click();
                      return false;
                    }
                  }
                });
                // update focused suggestion on hover
                $(document).on('mouseover', function(e) {
                  var that = e.target;
                  if (/fa_mention_suggestion/.test(that.className)) {
                    $(fa_mentionner.focused).removeClass('fam-focus');
                    that.className += ' fam-focus';
                    fa_mentionner.focused = that;
                  }
                });
              }
            })});
avatar
ThunderTB
Milouzien

MessageThunderTB le Dim 26 Aoû 2018 - 5:08

Resalut Phillipe , je viens tout juste de faire le test et maintenant tout fonctionne
alors je te remerci encore une fois de ton aide c'est très apprécié .

Si ont ne se reparle pas d'ici là , bonne fin d'été !!!
Milouze14
Milouze14
Fondateur

MessageMilouze14 le Dim 26 Aoû 2018 - 6:16

Hello Franck,
de rien et bonne fin d'été à toi aussi .

-Staff du Forum Milouze14-



  • Hello 
    Sujet résolu et déplacé dans le forum adéquat.

Pour toute information,merci de contacter un Membre du Staff

Voir le sujet précédent Voir le sujet suivant Revenir en haut

Créer un compte ou se connecter pour répondre

Vous devez être membre pour répondre.

S'enregistrer

Rejoignez notre communauté ! C'est facile !


S'enregistrer

Connexion

Vous êtes déjà membre ? Aucun soucis, cliquez ici pour vous connecter.


Connexion

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum