Rumah > hujung hadapan web > tutorial js > Kirakan masa twitter sejak tweet menggunakan JavaScript

Kirakan masa twitter sejak tweet menggunakan JavaScript

尊渡假赌尊渡假赌尊渡假赌
Lepaskan: 2025-02-26 01:49:10
asal
836 orang telah melayarinya

Kod JavaScript ini mengira masa yang berlalu sejak tweet dibuat, menggunakan harta created_at dari Twitter API's Search.JSON Response. Ia berguna untuk memaparkan "masa sejak" pada widget Twitter atau aplikasi yang serupa, dan boleh disegarkan dengan menggunakan setInterval.

Calculate Twitter Time Since Tweet using JavaScript

Fungsi: calculateSince

Fungsi ini mengambil rentetan

DateTime (mis., "Tue, 12 Jun 2012 06:24:59 0000") dan mengembalikan rentetan yang boleh dibaca manusia yang mewakili masa berlalu. created_at

/**
 * Calculates the time elapsed since a tweet was created.
 * @param {string} datetime - The 'created_at' datetime string from the Twitter API.
 * @return {string} - A human-readable string showing the time elapsed.
 */
function calculateSince(datetime) {
    const tweetTime = new Date(datetime);
    const currentTime = new Date();
    const minutesElapsed = Math.round((currentTime - tweetTime) / 60000);

    if (minutesElapsed === 0) {
        const secondsElapsed = Math.round((currentTime - tweetTime) / 1000);
        if (secondsElapsed < 10) return 'less than 10 seconds ago';
        if (secondsElapsed < 20) return 'less than 20 seconds ago';
        return 'half a minute ago';
    } else if (minutesElapsed === 1) {
        return '1 minute ago';
    } else if (minutesElapsed < 45) {
        return minutesElapsed + ' minutes ago';
    } else if (minutesElapsed < 1440) { // Less than a day
        const hoursElapsed = Math.round(minutesElapsed / 60);
        return 'about ' + hoursElapsed + ' hours ago';
    } else if (minutesElapsed < 2880) { // Less than 2 days
        return '1 day ago';
    } else {
        const daysElapsed = Math.round(minutesElapsed / 1440);
        return daysElapsed + ' days ago';
    }
}
Salin selepas log masuk

menyegarkan paparan masa:

Kod ini menggunakan

untuk mengemas kini "masa sejak" setiap 30 saat. Ia menganggap anda mempunyai elemen tweet dengan kelas setInterval, .tweet, dan .tweet-time (mengandungi atribut .tweet-user). created_at

// Auto-refresh interval to update time since tweeted
setInterval(() => {
    console.log('Updating time since...');
    const tweets = $('#tweets .tweet');
    tweets.each((index, tweetElement) => {
        $(tweetElement).find('.tweet-time').html(calculateSince($(tweetElement).find('.tweet-user').attr('created_at'))).fadeIn();
    });
}, 30000);
Salin selepas log masuk

soalan yang sering ditanya (dengan jawapan ringkas):

Bahagian FAQ asal dikekalkan, tetapi jawapan diringkaskan untuk keringkasan.

  • Pengesahan API Twitter (JavaScript): Gunakan OAuth 2.0 dengan perpustakaan seperti kunci JSOAuth dan API dari portal pemaju Twitter.
  • Penjadualan Tweets (JavaScript): Tidak disokong secara langsung oleh API Twitter. Penyelesaian JavaScript berasaskan penyemak imbas dibatasi oleh uptime penyemak imbas.
  • pengendalian ralat (posting tweet): Gunakan blok dalam janji untuk mengendalikan kesilapan semasa pengeposan tweet. catch
  • termasuk imej dalam tweet: Gunakan titik akhir untuk dimuat naik, kemudian masukkan /media/upload di media_id endpoint. /statuses/update
  • Retweeting, memadam, dan tindakan lain: Gunakan titik akhir API Twitter yang sesuai (, /statuses/retweet/:id, dan lain -lain) untuk tindakan ini. Setiap titik akhir mempunyai parameter tertentu. /statuses/destroy/:id
  • Mendapatkan Retweet/Like Count: Gunakan endpoint; Tanggapan termasuk /statuses/show/:id dan retweet_count. favorite_count
  • Menjawab tweet: Gunakan endpoint dengan /statuses/update dan in_reply_to_status_id. @username
  • Mendapatkan pengarang tweet: Gunakan endpoint; Tanggapan termasuk maklumat pengguna. /statuses/show/:id
Sambutan yang disemak ini memberikan versi dan jawapan yang lebih diperkemas dan diperbaiki. Ingatlah untuk menggantikan pemilih letak seperti

dengan pemilih elemen DOM sebenar anda. #tweets .tweet

Atas ialah kandungan terperinci Kirakan masa twitter sejak tweet menggunakan JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan