Jump to content
GreenSock

PointC last won the day on October 30 2022

PointC had the most liked content!

PointC

Moderators
  • Posts

    4,966
  • Joined

  • Last visited

  • Days Won

    401

Everything posted by PointC

  1. Hi Vector You can force the tweens to initially render and record everything by jumping to the end of your timeline and then immediately back to the beginning. Once you've created your timeline, you can just do this: tl.progress(1).progress(0); That should get everything ready for you and eliminate that first run stutter that you mentioned. Hopefully that helps. Happy tweening.
  2. Hi Dimotro Welcome to the GreenSock forums. That's happening because you have your fill initially set to none in your CSS. So the tween didn't really having a starting point for the color fade in. You can fix that by setting your fill to transparent in your CSS and it should work just fine for you. //switch this .st5{fill:none;stroke:#E0B03B;stroke-miterlimit:10;} // to this .st5{fill:transparent;stroke:#E0B03B;stroke-miterlimit:10;} Hopefully that helps. Happy tweening.
  3. Hey Dipscom You just need a slight change to get the expected behavior: // switch this tl.add("Start") .add(tl1, "Start") .add(tl2, "Start") //to this tl.add("Start") .add(tl1(), "Start") .add(tl2(), "Start")
  4. This thread has taken an unusual turn. What is happening here? I'm amused and confused. I'll be in my lab inventing a time travel machine so I can somehow warn myself not to look at that picture.
  5. Hi Visual-Q Sounds like you're looking for onCompleteParams. From the docs: onCompleteParams : Array - An Array of parameters to pass the onComplete function. For example,TweenLite.to(element, 1, {left:"100px", onComplete:myFunction, onCompleteParams:[element, "param2"]}); To self-reference the tween instance itself in one of the parameters, use "{self}", like:onCompleteParams:["{self}", "param2"] // this should work for you var titleTextAnimation = new TimelineMax( {onComplete:removeElement, onCompleteParams:[animationContainer]}); Hopefully that helps a bit. Happy tweening.
  6. Hi Art2B Have you tried setting force3D to false? Please see if this works for you: TweenMax.to('.holder', 2, {scale: 3, top: 250, left: 300, ease: Power4.easeOut, force3D:false}) More info about force3D: http://greensock.com/docs/#/HTML5/GSAP/Plugins/CSSPlugin/ Happy tweening.
  7. A GSAP tale: One goofy guy’s odyssey from knowing nothing to knowing just enough to confuse himself. (This is crazy long so feel free to jump to the epic conclusion). Greetings fellow GreenSockers. The end of this week marks the one-year anniversary of my first post on the forum so I thought I’d take the opportunity to share my 12-month story and hopefully encourage others to jump into the conversations around here. Maybe you’ll recognize yourself in some of the things I’ve experienced. My quick history in a nutshell Web design and coding is a second career for me. After 15 years of owning and operating a photography studio and processing lab (back in the film days - yup - I’m old), the digital camera came along and changed that industry, which necessitated a new career for me. I shifted to video production, which led to motion graphics and finally to web design. Our little agency now offers all those services. The web design clients never needed anything fancy so JavaScript took a back seat to HTML & CSS only sites for a number of years. JavaScript & GSAP: false starts and other obligations I first discovered GSAP a few years ago, but only tried it briefly. It looked cool, but with the time obligations of field video work and motion graphics jobs, it wasn’t something I could work into the schedule. Besides that, it was JavaScript – too complicated I thought. I knew JavaScript was the third piece of a good web designer’s skillset along with HTML and CSS, but I always convinced myself that I didn’t have the time and the sites we built didn’t need it. JavaScript Books + Classes = Fail I did make a few attempts at reading some JavaScript books and working through some online tutorials, but it just never ‘stuck’. Maybe the examples were too theoretical and dry or they were the wrong books and classes. I really don’t know, but I abandoned the learning process a number of times. Cut and Paste mentality Why did I really need to learn anyway? You can just Google what you need, cut and paste some code and presto – you’ve got some working JavaScript or jQuery. I only understood a small portion of what I was cutting and pasting, but hey… it worked so the problem was solved. That’s how I operated for quite some time. What’s a loop? What’s an array? What’s an object? Who cares? Wait a minute. This is ridiculous. Last spring, I was remodeling our company website and I had all these grand visions about making things move and behave in certain ways. Googling for code just wasn’t cutting it. I suddenly felt stupid. “This is ridiculous!” I thought. I should be able to learn how to write my own code. Oh yeah, I remembered that GreenSock thing I had looked at a few times and abandoned. That might work. Maybe I could actually learn how to use it this time. I become a forum lurker I started lurking in the shadows of the forum. After reading a lot of posts, I saw people asking many types of questions from simple to crazy complicated (at least to me). Two things I noticed were that every effort was made to find an answer (no matter the difficulty level of the question) and not one post was condescending or snarky. That’s quite rare on the ol’ interwebs, isn’t it? Hmmmm…maybe I’m in the right place. Oh boy… time to ask a question of my own One of the great things about learning GSAP is you’ll also pick up a lot of other JavaScript and/or jQuery along the way. I kept reading and practicing with some simple tweens, but now I had a question. Dare I post? I suppose, like many others, I feared looking like an idiot even though the forum members and moderators seemed quite nice and helpful. I do several dumb things every day so you’d think I’d be used to it by now. Oh well, here goes. My first question had to do with the indexOf() a Draggable snap array. Within 30 minutes, Diaco and Rodrigo had posted great answers and neither one called me stupid! Yay – how cool. I get hooked on GSAP and the forum About that same time, I decided our company should discontinue on-site video production and switch to studio only filming. I got tired of lugging loads of video gear in and out of buildings – it’s quite tiring and as I mentioned earlier – I’m old. This freed up some time and I decided to dedicate that time to learning GSAP and maybe, one day, even helping others. It wasn’t too long and I actually knew the answer to a forum question. I posted some information and wow – a little red indicator lit up on my control panel. Someone liked something I wrote. How fun – I’m hooked. Carl makes direct contact I continued to learn and experiment. I posted a few additional questions of my own, but I tried to answer more than I asked. If someone posted a question for which I had no answer, I tried to look it up in the docs and figure it out. Most of the time I was far too slow and Jack, Carl or one of the mods would already have the answer posted before I was done reading the question, but it was an interesting way to learn. I did sneak in a few good answers, which led to a private message from Carl. He thanked me for participating and helping in the forums. I thought it was pretty cool that a super smart guy like Professor Schooff would take the time to do that for little ol’ me. My decision to dedicate time to the platform and forum was reinforced. http://i.imgur.com/hdaB73Y.jpg Blake and I have a conversation I don’t recall if it was a back and forth in a forum post or a private message conversation, but Blake told me something that, of course is obvious, but it stuck with me and is important for all of us to remember. He mentioned that we all enter this learning process knowing nothing. If someone of Blake’s considerable skill level can be humble enough to remember first starting out in code, there may be hope for me after all. I guess if you think about it, there was a time when the simple concept of a variable was brand new to all of us. We’re not born with these abilities. They’re learned and we’re all at different points on the educational path. Never feel stupid for not knowing something. Moderator Promotion Throughout the last year, I’ve continued to learn and study both GSAP and JavaScript. Some of those books I abandoned in the past even make sense now. I’ve tried to be active in the GS community and answer as many forum questions as possible. If I’ve answered a question of yours, I hope you found it somewhat helpful. I’ve cranked out some fun CodePens and finally started a Twitter account to tweet them out. I am nowhere near an expert with GSAP or JavaScript, but I know so much more than I knew a year ago. Apparently I know enough to be entrusted with a forum promotion to Moderator status. I’m honored to be included on such an amazing team. 12 months down – what’s next? My agency duties are still numerous so I can’t dedicate full time to coding, but it remains something to which I’m committed and thoroughly enjoy. I started this 12-month GSAP journey just wanting the ability to write my own code rather than cutting and pasting the work of others. I’m confident I have achieved that, but I still have days when a simple piece of code just won’t coalesce in my brain and that can be frustrating. I guess we all have those days, right? I make several mistakes every day, but that’s o.k. too. I learn a lot more from my screw-ups than I ever do when it all goes right on the first try. I plan to keep learning and getting better and when I get stuck, I’ll be able to get an answer from this amazing community. I’ll continue to give back to the GS community by answering any questions that are within my abilities to do so. The super mods: Jonathan, Blake, Diaco and Rodrigo Thank you to my fellow moderators. You guys rock and have taught me so much. @Jonathan – if there is a browser bug, quirk or special fix that you are not aware of, I’ve yet to read about it. Your knowledge has helped me fix many pieces of code before they even became a problem. Plus, if I ever have a question of top/left vs. x/y, I know who I’ll ask. @Blake – if I could be half as good at coding as you, I’d be a very happy guy. Your work always teaches and inspires me. I don’t think you’re allowed to ever stop posting on the forum or we may all show up on your doorstep and ask questions. @Diaco – your code is always so concise. I deconstruct some of your pens and am astounded by how much you squeeze out of a few lines. If I made some of your pens from scratch, I’d have 20 variables, 5 loops, 12 tweens and 80 lines of code. You do the same with two variables and 4 lines of code. Amazing stuff. @Rodrigo – when searching the forum, I often land on one of your past posts and learn a lot. Your knowledge is vast and I wish you had more time to post around here. Your ninja skills are incredibly strong. Our superhero leaders @Carl – I’ve participated in several online forums ranging from graphic design to 3D to video production, but the GreenSock forum is the best and a big part of that is you. You not only provide great answers, but you do it in clever ways with just the right amount of humor thrown in here and there. The collection of videos you’ve made is invaluable and should be mandatory viewing for anyone interested in GSAP. I’ve seen you monitoring the forums at all hours of the day and even on weekends. When you get any sleep I’ll never know, but I thank you for your dedication and sharing your knowledge. @Jack – how you had the vision to start GreenSock and write the first version of the animation platform I can only imagine. I’m glad you did because GSAP is such an amazing collection of tools. The friendliness of the community is definitely following your lead. I don’t understand a lot of what you talk about sometimes, but I know enough to be amazed by your brilliance and talent. You call yourself just a guy who geeks out about code, but you’re more than that. You’re a smart and generous innovator who’s created a special brand and place on the web. I think I can safely speak for the community when I say we all appreciate the time and effort you put into helping us make beautiful and high-performance animations. Thank you sir. The epic conclusion. Well… maybe just a regular conclusion. If you didn’t read the whole post, I don’t blame you. It’s ridiculously long and I’m just some guy you don’t know so I’ll wrap it up with this bit of advice. Whether you’re a genius or feel like an idiot, it doesn’t matter. Try to learn one new thing each day and before you know it, a year will have passed and all those little bits will add up to new skills and abilities. If you’ve never posted on the forum, please jump in and participate. The more voices we have around here, the more we all benefit. If you need an answer, please don’t be afraid to ask a question. Believe me, I’m just some goofy guy in front of a computer. If I can learn this stuff, so can you. As I begin my second year in GreenSockLand, I’m looking forward to learning more, seeing everyone’s work and answering as many of your questions as I can. This is an amazing community and I encourage anyone reading this to set up an account and get involved. My best to all of my fellow GreenSockers. See you around the forums. Edit and Update (July 2020): I just made it to five years of hanging around the forum and you can read the continuation of my journey here. motiontricks.com Finally, without further ado, I introduce you to motiontricks.com - Craig (PointC) PS I made a little CodePen to commemorate my one-year forum anniversary. It’s how I felt before and after discovering the power of GSAP. Enjoy.
  8. PointC

    Newbie

    Hi dyna1118 Your pen wasn't applying the CSS because there was a stray <style> tag in the 'Stuff for the Head' panel. You had this: <script src='http://cdnjs.cloudflare.com/ajax/libs/gsap/1.18.2/TweenMax.min.js'></script> <script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js'></script><style> // this was the problem <script src="http://cdnjs.cloudflare.com/ajax/libs/gsap/1.18.4/plugins/CSSPlugin.min.js"></script> The easiest way to load JavaScript on CodePen is to click the little gear icon on that panel and load what you need from there. You also don't need to load the CSS plugin as it's already loaded with TweenMax. Happy tweening.
  9. PointC

    Swinging Rope ?

    As Carl mentioned, you've got an old file loading and it's still there. <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/1.11.7/TweenMax.min.js"></script> // remove this You also still have all the extras in the HTML panel. You don't need the body tag or head elements. All you need is this: <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="21.7px" height="206.7px" viewBox="0 0 21.7 206.7" xml:space="preserve"> <style type="text/css"> .sqone{fill:#3E53A4;stroke:#000000;stroke-width:2;stroke-miterlimit:10;} </style> <rect class="sqone" x="1" y="1" width="19.7" height="204.7"/> </svg> Make those changes or fork Carl's pen and everything will work just fine.
  10. Hi qarlo I think this thread can answer your question: http://greensock.com/forums/topic/14323-speed-of-responsive-animation/ Happy tweening.
  11. Nope - GSAP is not dependent on jQuery at all. You can remove it. The reason your code is breaking when you remove it is because your hide & show functions are relying on jQuery to check the width. You can change those to vanilla JavaScript like this: // change this if ($(document).width() > 933) // to this if (document.body.clientWidth >933) If you're trying to get away from jQuery, here's a website you may find useful: http://youmightnotneedjquery.com/ Happy tweening.
  12. Wow! Now that's a solution. And that fellow forum members is one of the big reasons why GreenSock is such a special company and GSAP is an amazing platform. I cannot imagine that kind of service and attention anywhere but here. Not that you have to be a Club member to get answers here in the forum, but it's not a mystery why so many people choose to join Club GreenSock and get access to the incredible bonus plugins. Well done Jack.
  13. Hi Aleksei Welcome to the forums. Unless 'none' is a variable, there is a slight error in your set() code. You'd want: TweenMax.set("."+type, {display:"none"}); In this case though, I think autoAlpha could work well for you. It's a combination of opacity and visibility. Once opacity hits 0, the element is automatically set to visibility:hidden. It's quite handy for this type of situation. TweenMax.to(".plate", .3, {autoAlpha: 0}); You can read more about autoAlpha here: http://greensock.com/docs/#/HTML5/GSAP/Plugins/CSSPlugin/ There is a search button on the upper right. Just click the little magnifying glass and you can search for whatever you need. Hopefully this info helps a bit. Happy tweening.
  14. Hi d1ch0t0my If I set force3D to false, it seems fine to me in Chrome. Please give this a try: tlmenu.fromTo(menubox, 10, {scale:1, transformOrigin:"50% 50%"}, {scale:30, transformOrigin:"50% 50%", force3D:false}); More info about force3D can be found here: http://greensock.com/docs/#/HTML5/GSAP/Plugins/CSSPlugin/ Happy tweening
  15. I add a 'back to top' button to a lot of my sites and this is one of those effects that would be better with a single tween rather than a timeline. You won't have to worry about seeking and replaying a timeline. I'd just switch the action in your click function to a tween: TweenLite.to(window, 1, {scrollTo:{y:0}, ease:Power2.easeInOut}); Hopefully that helps. Happy scrolling.
  16. That is great Blake! I just wanted to take a moment and thank you for hanging out here on the forum. I can honestly say I've learned just as much (if not more) by reading your posts and deconstructing your pens than I have by reading books and viewing online tutorials. You are truly an amazingly talented coding rock star and we're lucky to have you as an inspirational teacher around here. Thank you Blake.
  17. Hi TELLO Welcome to the GreenSock forums. I think rather than trying to change the duration on click, this would be a really good chance to change the timeScale(). Here's a quick pen showing this option in action: http://codepen.io/PointC/pen/VjaXYd/ Here's some reading about timeScale() http://greensock.com/docs/#/HTML5/GSAP/TimelineMax/timeScale/ Hopefully that helps a little bit. Happy tweening.
  18. I didn't see anything with a green background either. You mentioned a (bg) and you do have a div with id of #bg, but it looks like it has a gray background. It doesn't currently show because the left and top positions are not set. It doesn't have anything to do with the Morph plugin. If you change your CSS, it will show correctly. #bg { background-color: #666666; position: absolute; width: 100%; height: 100%; left:0; // this was missing top:0; // this was missing } Hopefully that helps. If that wasn't what you were referring to, some more details and a simplified demo would be great. Happy tweening.
  19. Hello OSUblake Welcome to the GreenSock forums. Could you please make a reduced demo for us.... hey wait a minute. Sorry, I got confused as you so rarely start a topic. I think that's a pretty cool idea and could come in quite handy. We certainly see a lot of questions about sliders around here and this could make those quite a bit easier. I'll give a +1 to this idea. I'm anxious to hear what Sir Jack of the House Doyle has to say.
  20. That's happening because of the transform of the path inside the mask. The mask hasn't moved, but the path inside it has. Simply remove that transform and you'll be all good to go. http://codepen.io/PointC/pen/JKGezz Happy tweening.
  21. Hi phillip_vale Your pen had some errors so I just made a new one for you. http://codepen.io/PointC/pen/QEyxLY/ Hopefully that helps a little bit. Happy tweening.
  22. You're very welcome. Glad to hear you're enjoying GSAP. This is an incredible community of helpful people so please don't hesitate to post any additional problems or questions. Reduced demos always appreciated. Happy tweening.
  23. The 'i' is the index of that element. You can use 'i' or 'index' or almost anything you like really, but most of the time you'll see those two. The 'element' is the DOM element that is part of the jQuery object. It's what 'this' will be referring to. We don't actually need them to make this work. You could change the code slightly and get the same result: // change line 1 to this $(".icon").each(function() { // change line 11 to this $(this).hover(makeItWork, makeItWork) Here's some good info that will explain it in detail: https://api.jquery.com/each/ Hopefully that helps. Happy tweening.
  24. Hi Sloan Thrasher Welcome to the GreenSock forums. That's a good question. camelCase should be used for all the hyphenated properties. You just drop the hyphen and make the first letter of the second word uppercase. So font-size becomes fontSize, background-color becomes backgroundColor etc. GSAP can animate any numeric property and can set non-animatable properties. Sounds like you found autoAlpha. That is a combination of opacity and visibility. When you use autoAlpha and you set it to 0, the element is automatically set to visibility:hidden. Handy for many situations, but you can use opacity if you like. scale is just scale if you want uniform scaling or you can use scaleX or scaleY as well. You'll find a lot of great information in the docs for the CSSPlugin http://greensock.com/docs/#/HTML5/Plugins/CSSPlugin/ Hopefully that helps a little bit. Happy tweening and welcome aboard.
×