• A
  • " />
    • A
    • " />
      • A
      • "/>
        DEVHIDE
        • Home (current)
        • About
        • Contact
        • Cookie
        • Home (current)
        • About
        • Contact
        • Cookie
        • Disclaimer
        • Privacy
        • TOS
        Login Or Sign up

        Issue on Path Fill Effect by Hover on Associated Link With Raphaël.js

        112 Views Asked by Suffii At 08 June 2015 at 01:26 2025-12-18T08:16:59.493148

        Can you please take a look at this demo and let me know why I am not able to add fill effect on hover on list?

        <div id="canvas"></div>
        <ul>
            <li>A</li>
            <li>B</li>
            <li>C</li>
        </ul>
        
        <script>
        window.onload = function () {
            var c = Raphael("canvas", 200, 200);
            var a = c.path("M50 50, L50,60, L60,60 L60,50 L50,50").attr({fill: "#000"});
            var b = c.path("M70 70, L70,80, L80,80 L80,70 L70,70").attr({fill: "#000"});
            var c = c.path("M90 90, L90,100, L100,100 L100,90 L90,90").attr({fill: "#000"});
        
        };
        jQuery('ul li').hover(function () {
            a.attr({fill: "#ccc" });
        }, function () {
            a.attr({fill: "#000" });
        });
        </script>
        
        javascript jquery raphael
        Original Q&A
        1

        There are 1 best solutions below

        1
        Walter Chapilliquen - wZVanG Walter Chapilliquen - wZVanG On 08 June 2015 at 01:32 BEST ANSWER

        window.onload is running asynchronously, so the variables a, b, c must be declared before

        jQuery(document).ready(function(){
        
            var Draw = Raphael("canvas", 200, 200);
        
            var Letters = {
                a: Draw.path("M50 50, L50,60, L60,60 L60,50 L50,50").attr({fill: "#000"}),
                b: Draw.path("M70 70, L70,80, L80,80 L80,70 L70,70").attr({fill: "#000"}),
                c: Draw.path("M90 90, L90,100, L100,100 L100,90 L90,90").attr({fill: "#000"})
            }
        
            jQuery('ul li').each(function(){
                var letter = $(this).text().toLowerCase()
                , defaultColor = Letters[letter].attr("fill");
        
                $(this).hover(function(){
                    Letters[letter].attr({fill: "#ccc" });
                }, function(){
                    Letters[letter].attr({fill: defaultColor });
                });
            });
        
        });
        

        Update, based on list letters: Demo

        Related Questions in JAVASCRIPT

        • Angular Show All When No Filter Is Supplied
        • Why does a function show up as not defined
        • I count the time the user takes to solve my quiz using Javascript but I want the same time displayed on another page
        • Set "More" "Less" font size
        • Using pagination on a table in AngularJS
        • How to sort these using Javascript or Jquery Most effectively
        • how to fill out the table with next values in array with one button
        • State with different subviews
        • Ajax jQuery firing multiple time display event for the same result
        • Getting and passing MVC Model data to AngularJS controller
        • Disable variable in eval
        • javascript nested loops waiting for user input
        • .hover() seems to overwrite .click()
        • How to sort a multi-dimensional array by the second array in descending order?
        • How do I find the fonts that are not loading in a CORS situation ( MoovWeb )?

        Related Questions in JQUERY

        • How to sort these using Javascript or Jquery Most effectively
        • Ajax jQuery firing multiple time display event for the same result
        • .hover() seems to overwrite .click()
        • Check for numeric value with optional commas javascript
        • Extending Highmaps Side Effect
        • Array appending after each onclick and loop in javascript
        • how can i append part of a table based on how many tr it has?
        • Play multiple audio files in a slider
        • Remove added set of rows
        • Access property of an object of type [Model] in JQuery
        • AJAX PHP - Reload div after submit
        • proengsoft/laravel-jsvalidation ReferenceError: jQuery is not defined
        • when a checkbox is checked how to display a different hidden element using javascript
        • Get jquery error Uncaught RangeError: Maximum call stack size exceeded
        • Removing only the closest thead on table filtering

        Related Questions in RAPHAEL

        • Is there any method to find element by snap id in Snap svg?
        • Issue on Path Fill Effect by Hover on Associated Link With Raphaël.js
        • How can I animate the fill of a path with Raphaël.js?
        • How to reset Raphael canvas size when dragging the rectangle
        • raphael js drag rotation in Firefox and Internet Explorer
        • enyo framework to integrate which raphael
        • How to create infinite raphael canvas
        • Having Issue on Assigning Functions to JavaScript Object
        • Using raphael.js to draw an image with parameters sent through socket.io
        • Toggle raphael object's colour on click
        • Fading out two over-layed objects uniformly in RaphaelJS/SVG
        • Raphael JS fill SVG with image -> scaling?
        • z-index layering in raphael.js
        • Raphael/Mapael slow on sorting plots
        • Raphael.js has weird behavior on drag

        Trending Questions

        • UIImageView Frame Doesn't Reflect Constraints
        • Is it possible to use adb commands to click on a view by finding its ID?
        • How to create a new web character symbol recognizable by html/javascript?
        • Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
        • Heap Gives Page Fault
        • Connect ffmpeg to Visual Studio 2008
        • Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
        • How to avoid default initialization of objects in std::vector?
        • second argument of the command line arguments in a format other than char** argv or char* argv[]
        • How to improve efficiency of algorithm which generates next lexicographic permutation?
        • Navigating to the another actvity app getting crash in android
        • How to read the particular message format in android and store in sqlite database?
        • Resetting inventory status after order is cancelled
        • Efficiently compute powers of X in SSE/AVX
        • Insert into an external database using ajax and php : POST 500 (Internal Server Error)

        Popular # Hahtags

        javascript python java c# php android html jquery c++ css ios sql mysql r reactjs

        Popular Questions

        • How do I undo the most recent local commits in Git?
        • How can I remove a specific item from an array in JavaScript?
        • How do I delete a Git branch locally and remotely?
        • Find all files containing a specific text (string) on Linux?
        • How do I revert a Git repository to a previous commit?
        • How do I create an HTML button that acts like a link?
        • How do I check out a remote Git branch?
        • How do I force "git pull" to overwrite local files?
        • How do I list all files of a directory?
        • How to check whether a string contains a substring in JavaScript?
        • How do I redirect to another webpage?
        • How can I iterate over rows in a Pandas DataFrame?
        • How do I convert a String to an int in Java?
        • Does Python have a string 'contains' substring method?
        • How do I check if a string contains a specific word?
        .

        Copyright © 2021 Jogjafile Inc.

        • Disclaimer
        • Privacy
        • TOS
        • Homegardensmart
        • Math
        • Aftereffectstemplates