Menu
Forums
New posts
Search forums
What's new
New posts
New profile posts
Latest activity
Members
Current visitors
New profile posts
Search profile posts
Advertise
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Menu
Log in
Register
Forums
The Grow Room
Indoor Growing
Javadog's Next Adventure
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
Members who reacted to message #5336
All
(1)
Like
(1)
Nov 17, 2016
bassman999
Well-Known Member
·
From
Narnia
Messages
11,961
Reaction score
8,878
Points
288
Loading…
Forums
The Grow Room
Indoor Growing
Javadog's Next Adventure
Top
// Add this to your XenForo extra.js template or include in a separate JS file // 1. Basic Twemoji Implementation $(document).ready(function() { // Load Twemoji library $.getScript("https://unpkg.com/twemoji@14.0.2/dist/twemoji.min.js", function() { // Function to replace native emojis with Twemoji function replaceTwemoji() { // Parse the DOM to replace emojis twemoji.parse(document.body, { folder: 'svg', ext: '.svg', callback: function(icon, options) { // Exclude certain characters if needed switch (icon) { case 'a9': // © copyright case 'ae': // ® registered trademark case '2122': // ™ trademark return false; } return ''.concat(options.base, options.folder, '/', icon, options.ext); } }); } // Initial replacement replaceTwemoji(); // Watch for new content (like when loading new posts) $(document).on('xf:layout', function() { replaceTwemoji(); }); // 2. Modify the XenForo emoji picker to use Twemoji if (XF.EmojiCompleter) { // Override the default emoji completer XF.EmojiCompleter = XF.extend(XF.EmojiCompleter, { insertEmoji: function(shortname) { // Call the original method to insert the emoji this.__super(shortname); // After insertion, replace with Twemoji setTimeout(function() { replaceTwemoji(); }, 10); } }); // Replace emojis in the picker $(document).on('shown.bs.dropdown', '.js-emojiContainer', function() { setTimeout(function() { twemoji.parse(document.querySelector('.js-emojiContainer'), { folder: 'svg', ext: '.svg' }); }, 50); }); } }); }); // 3. Add CSS for proper emoji display $(document).ready(function() { // Add CSS for emoji styling $("