jQuery "ঝলকানি হাইলাইট" ডিভ উপর প্রভাব?


88

আমি নিম্নলিখিতটি করার উপায় খুঁজছি।

আমি <div>একটি পৃষ্ঠায় একটি যুক্ত করি এবং একটি এজাক্স কলব্যাক কিছু মান দেয়। <div>Ajax কল থেকে মানগুলি ভরা হয়, এবং <div>তারপর অন্য আগে লেখা হয় <div>, যা একটি সারণি কলামে হিসাবে কাজ করে।

আমি ব্যবহারকারীর দৃষ্টি আকর্ষণ করতে চাই, তাকে দেখানোর জন্য যে পৃষ্ঠায় নতুন কিছু আছে।
আমি <div>চোখের পলক দেখতে চাই না / লুকিয়ে রাখতে চাই না, তবে কিছু সময়ের জন্য হাইলাইট / আনহাইটলাইট চাই, 5 সেকেন্ড বলি।

আমি পলক প্লাগইনটি দেখছি, তবে যতদূর আমি দেখতে পাচ্ছি এটি কেবল কোনও উপাদানকে দেখায় / আড়াল করে।

বিটিডব্লিউ, সমাধানটি ক্রস ব্রাউজার হতে হবে, এবং হ্যাঁ, দুর্ভাগ্যক্রমে আইই দুর্ভাগ্যক্রমে অন্তর্ভুক্ত রয়েছে। আইই তে এটি কাজ করার জন্য আমাকে সম্ভবত কিছুটা হ্যাক করতে হবে, তবে সামগ্রিকভাবে এটি কাজ করতে হবে।


4
দয়া করে না। যদি আপনার অবশ্যই হয় তবে এটি হাইলাইট এফেক্টের সাথে কেবল হাইলাইট করুন ( ডকস
tvanfosson

4
@tv আমি মনে করি একটি সংক্ষিপ্ত দুই বা তিনটি "ব্লিঙ্কস" (যেখানে "ঝিমুনি" আশাবাদী কিছু সূক্ষ্ম, যেমন একটি অ্যানিমেটেড সীমান্তের আভা বা এর মতো কিছু) ঠিক আছে এবং বিরক্তিকর নয়, তবে অবশ্যই দীর্ঘকাল ধরে পুরানো ধরণের ঝলকানো সময় খারাপ হবে।
পয়েন্টি

4
হেই, আমি জানি জ্বলজ্বলে জ্বলজ্বল, তবে এটির একটি উদ্দেশ্য এখানে রয়েছে। ব্যবহারকারীটি সারা দিন মনিটরের পাশে বসে থাকার আশা করা যায় না, তাই তাকে দূর থেকে কিছু পরিবর্তন হয়েছে কিনা তা দেখতে হবে
জোলাক্যাট

25
তোমরা ছেলেরা হাসিখুশি। ওয়েবপেজগুলি কেবলমাত্র আপনার ছেলেরা মনে করেন যে তারা সঠিক বলে মনে হয়? আমি হাইলাইট করতে চাই না, আমার একটি পলক প্রয়োজন কারণ আমি একটি বৃহত ফর্ম্যাট টিভিতে দেখতে একটি প্রসেস মনিটর পৃষ্ঠা লিখছি এবং এটি লাল ফ্ল্যাশ করে চালিয়ে যাওয়া দরকার যাতে মানুষের দৃষ্টি আকর্ষণ করা যায়।
বমো

উত্তর:


173

jQuery UI হাইলাইট প্রভাব আপনি যা খুঁজছেন তা।

$("div").click(function () {
      $(this).effect("highlight", {}, 3000);
});

ডকুমেন্টেশন এবং ডেমো এখানে পাওয়া যাবে


সম্পাদনা করুন :
সম্ভবত jQuery UI পালসেট প্রভাব আরও উপযুক্ত, এখানে দেখুন


সম্পাদনা # 2 :
অস্বচ্ছতা সামঞ্জস্য করতে আপনি এটি করতে পারেন:

$("div").click(function() {
  // do fading 3 times
  for(i=0;i<3;i++) {
    $(this).fadeTo('slow', 0.5).fadeTo('slow', 1.0);
  }
});

... সুতরাং এটি 50% এর অস্বচ্ছতার চেয়ে কম যাবে না।


4
প্লাসেট যা আমি খুঁজছি। অনেক ধন্যবাদ. কেবল, এটিকে পুরোপুরি বিবর্ণ হওয়া থেকে বিরত রাখতে কোনও উপায় আছে। শুধু বিবর্ণ করতে বলুন 50% অস্বচ্ছতা? সম্ভবত কয়েকবার চাইল হাইলাইট এফেক্ট?
জোলাখ্যাট


30

এটি আমি তৈরি একটি কাস্টম ঝলক প্রভাব, যা ব্যবহার করে setIntervalএবংfadeTo

এইচটিএমএল -

<div id="box">Box</div>

জেএস -

setInterval(function(){blink()}, 1000);


    function blink() {
        $("#box").fadeTo(100, 0.1).fadeTo(200, 1.0);
    }

এটি হিসাবে সহজ হিসাবে।

http://jsfiddle.net/Ajey/25Wfn/


4
ঠিক কাজ করে! এবং কোনও জিকুয়ের ইউআই দরকার নেই।
পাভেল ভ্লাসভ

দুর্দান্ত সমাধান! Jquery ব্যবহার করে কোনও সমস্যা ছাড়াই কাজ করে। ধন্যবাদ
ডিজিটাল সাইট

এটি এখানে সেরা সমাধান!
দিমিত্রিভাইকো

এখানে সেরা সমাধান!
w3spi

19

আপনি যদি ইতিমধ্যে Jquery UI গ্রন্থাগার ব্যবহার না করে থাকেন এবং আপনি যা করতে পারেন তার প্রভাবটি নকল করতে চান তবে খুব সহজ is

$('#blinkElement').fadeIn(100).fadeOut(100).fadeIn(100).fadeOut(100);

আপনার ডিজাইনের আরও ভাল ফিট করার জন্য আপনি আরও দ্রুত বা ধীর গতির জন্য সংখ্যাগুলি নিয়েও খেলতে পারেন।

এটি একটি বিশ্বব্যাপী jquery ফাংশন হতে পারে যাতে আপনি একই প্রভাব পুরো সাইটের জুড়ে ব্যবহার করতে পারেন। এছাড়াও নোট করুন যে আপনি যদি এই কোডটি লুপের জন্য রাখেন তবে আপনার 1 মিলিয়ন ডাল থাকতে পারে তাই আপনি ডিফল্ট 6 বা ডিফল্ট কতটা সীমাবদ্ধ নেই।

সম্পাদনা: এটি একটি বৈশ্বিক jQuery ফাংশন হিসাবে যুক্ত করা হচ্ছে

$.fn.Blink = function (interval = 100, iterate = 1) {
    for (i = 1; i <= iterate; i++)
        $(this).fadeOut(interval).fadeIn(interval);
}

নিম্নলিখিতটি ব্যবহার করে আপনার সাইট থেকে যে কোনও উপাদানকে সহজেই ঝাপটান

$('#myElement').Blink(); // Will Blink once

$('#myElement').Blink(500); // Will Blink once, but slowly

$('#myElement').Blink(100, 50); // Will Blink 50 times once

18

যারা পুরো jQuery UI- র পুরোটা অন্তর্ভুক্ত করতে চান না, তাদের পরিবর্তে আপনি jQuery.pulse.js ব্যবহার করতে পারেন ।

অস্বচ্ছতা পরিবর্তনের লুপিং অ্যানিমেশন থাকতে, এটি করুন:

$('#target').pulse({opacity: 0.8}, {duration : 100, pulses : 5});

এটি হালকা (1 কেবি এরও কম), এবং আপনাকে কোনও ধরণের অ্যানিমেশন লুপ করতে দেয়।


4
তবুও jQuery UI "এফেক্টস" দরকার
জেরোম জাগলালে

4
@ জেরোম জাগলেলে আমি jQuery UI ছাড়াই এটি ব্যবহার করি, যেহেতু একা jQuery এ অস্বচ্ছতা পরিবর্তন করা যায়। আপনি jQuery UI নির্দিষ্ট অ্যানিমেশন ব্যবহার না করে এটি আপনার পক্ষে একই হওয়া উচিত।
লুলালালা

4
ভাল যুক্তি. আমি প্রথম ডেমো দ্বারা বিভ্রান্ত হয়েছিল (টেক্সট পালসিং রেড) যার জন্য jQuery UI প্রভাব প্রয়োজন।
জেরোম জাগলেলে

শুধু একটি নোট. আপনাকে কেবল jquery.color.jsরঙের স্টাফের জন্য অন্তর্ভুক্ত করতে হবে ।
ডেভ


6

যেহেতু আমি এমন কোনও jQuery ভিত্তিক সমাধান দেখতে পাচ্ছি না যার জন্য অতিরিক্ত লাইব্রেরিগুলির প্রয়োজন নেই এখানে একটি সাধারণ একটি যা ফেডইন / ফিডআউট ব্যবহার করার চেয়ে কিছুটা নমনীয়।

$.fn.blink = function (count) {
    var $this = $(this);

    count = count - 1 || 0;

    $this.animate({opacity: .25}, 100, function () {
        $this.animate({opacity: 1}, 100, function () {
            if (count > 0) {
                $this.blink(count);
            }
        });
    });
};

এটি ব্যবহার করুন

$('#element').blink(3); // 3 Times.

1

আমি এর মতো বিভিন্ন পূর্বনির্ধারিত রং ব্যবহার করি:

theme = {
    whateverFlashColor: '#ffffaa',
    whateverElseFlashColor: '#bbffaa',
    whateverElseThenFlashColor: '#ffffff',
};

এবং তাদের এটি ব্যবহার করুন

$('#element').effect("highlight", {color:theme.whateverFlashColor}, 1000);

সহজ :)


0

আপনি যদি jQuery UI এর ওভারহেডটি না চান তবে আমি সম্প্রতি একটি পুনরাবৃত্ত সমাধান ব্যবহার করে লিখেছি .animate()। আপনার প্রয়োজন হিসাবে বিলম্ব এবং রঙগুলি কাস্টমাইজ করতে পারেন।

function doBlink(id, count) {
    $(id).animate({ backgroundColor: "#fee3ea" }, {
        duration: 100, 
        complete: function() {

            // reset
            $(id).delay(100).animate({ backgroundColor: "#ffffff" }, {
                duration: 100,
                complete: function() {

                    // maybe call next round
                    if(count > 1) {
                        doBlink(id, --count);
                    }
                }
            });

        }
    });
}

অবশ্যই আপনি রঙ পেতে প্লাগ ইন করতে হবে backgroundColorসঙ্গে কাজ করার .animate()https://github.com/jquery/jquery-color

এবং কিছুটা প্রসঙ্গ সরবরাহ করার জন্য আমি এটিকে এটি বলেছি। আমার পৃষ্ঠাটি আমার টার্গেট ডিভায় স্ক্রোল করা এবং তারপরে এটি ঝাপটানো দরকার।

$(window).load(function(){
    $('html,body').animate({
        scrollTop: $(scrollToId).offset().top - 50
    }, {
        duration: 400,
        complete: function() { doBlink(scrollToId, 5); }
    });
});

0

আমি মনে করি আপনি দেওয়া অনুরূপ উত্তরটি ব্যবহার করতে পারেন। আপনি এটি এখানে খুঁজে পেতে পারেন ... https://stackoverflow.com/a/19083993/2063096

  • এটি কেবল জাভাস্ক্রিপ্ট এবং jQuery হিসাবে সমস্ত ব্রাউজারে কাজ করা উচিত।

দ্রষ্টব্য: এই সমাধানটি jQuery UI ব্যবহার করে না, এমন একটি ফ্রিডলও রয়েছে যাতে আপনি এটি আপনার কোডে প্রয়োগের আগে নিজের পছন্দ অনুসারে খেলতে পারেন।


0

কেবল এলেম.ফ্যাডআউট (10) দিন .ফ্যাডইন (10);


FadeOut / FadeIn লুকিয়ে / শেষ পর্যন্ত উপাদান প্রদর্শন করে যা আমি যা খুঁজছিলাম তা নয়। উপাদানটির আড়াল না করেই রঙ বর্ণের অস্বচ্ছতা বাড়াতে / হ্রাস করা দরকার
জোলাকট

না, এলেম.শো ()। আড়াল করুন () তা করে। FadeOut / FadeIn অপ্টিসিটি পরিবর্তন করে। প্রয়োজনীয় প্রভাব পেতে আপনি fadeOut / fadeIn এর সময়কালের সাথে গলগল করতে পারেন। এটি একবারে একবারে লুকায়।
ইবসেনভ


0
<script>
$(document).ready(function(){
    var count = 0;
    do {
        $('#toFlash').fadeOut(500).fadeIn(500);
        count++;
    } while(count < 10);/*set how many time you want it to flash*/
});
</script

0

এটি পরীক্ষা করে দেখুন -

<input type="button" id="btnclick" value="click" />
var intervalA;
        var intervalB;

        $(document).ready(function () {

            $('#btnclick').click(function () {
                blinkFont();

                setTimeout(function () {
                    clearInterval(intervalA);
                    clearInterval(intervalB);
                }, 5000);
            });
        });

        function blinkFont() {
            document.getElementById("blink").style.color = "red"
            document.getElementById("blink").style.background = "black"
            intervalA = setTimeout("blinkFont()", 500);
        }

        function setblinkFont() {
            document.getElementById("blink").style.color = "black"
            document.getElementById("blink").style.background = "red"
            intervalB = setTimeout("blinkFont()", 500);
        }

    </script>

    <div id="blink" class="live-chat">
        <span>This is blinking text and background</span>
    </div>

0

আমি যা খুজছিলাম ঠিক তা পাইনি তাই আমি এটি তৈরি করতে পারলাম এমন কিছু মৌলিক কিছু লিখেছিলাম। হাইলাইট করা ক্লাসটি কেবল একটি পটভূমির রঙ হতে পারে।

var blinking = false; // global scope

function start_blinking() {
    blinking = true;
    blink();
}

function stop_blinking() {
    blinking = false;
}

function blink(x=0) {
    $("#element").removeClass("highlighted"); // default to not highlighted to account for the extra iteration after stopping

    if (blinking) {
        if (x%2 == 0) $("#element").addClass("highlighted"); // highlight on even numbers of x
        setTimeout(function(){blink(++x)},500); // increment x and recurse
    }
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.