Shim Layer For Bind() - Sprite Animation On The Canvas Wouldn't Work On Safari Or Older Versions Of Firefox
Aug 30, 2011
I have a script that runs a sprite animation on the canvas, adapted from here: [URL] After wondering why it wouldn't work on Safari or older versions of Firefox, I saw this: [URL] and implemented the suggested shim. However, I'm still getting some errors that I can't explain for the life of me. To make this easy for everyone, I threw it in a jsfiddle: [URL]
Please do not take this the wrong way, but rather as a genuine question I have. I do not want to be negative, but the answer to our bug reporthttp[URL]... One of the main reasons we turned to a javascript framework (we used to use prototype before we - migrated to jQuery), is that we wouldn't need to worry about browsers and versions our users use.[URL].. I now notice that I can not rely on jQuery framework for making functions work cross-browser.
In my opinion, if there is an issue with this, shouldn't jQuery intercept and wrap the call to something that does work in Webkit? Again - this is not meant to be negative, but as an end-developer, I think I should be able to rely on same behaviour of all methods provided in the jQuery library, regardless of what browser/version is being used. (or perhaps at least document it in the api docs?)
I have a menu in which is applied typeface script. Typeface 0.11 version doesn't support hover on links. There is an experimental version but doesn't work very well for me, so i tried to implement hover by myself. Problem is: hover works pretty well changing canvas context property fillColor and then calling fill(), but the stroke on hovered voice remains on another color. Difficult to explain, so i put some test code online: TEST CODE As you can see, passing with mouse on the menu voices triggers the hover and the element change, but remains bordered in red.
I have two select lists that have option lists that are created from external XML lists that contain course offerings available at different locations. Each location has a different set of course offerings. When a user selects a location, the javascript code will hide / show the option entries that correspond to the course offerings for that location. If a user selects a course offering, the javascript code will show / hide the locations that offer those courses.
Click events are attached to each of the Option entries with the code below. The code works correctly with Firefox and Opera, but the click events are never triggered in IE, Safari or Chrome. The Chrome debugger seems to indicate that the click events get set up in Chrome (although I am not sure where JQuery saves event handler data). Each option entry has a unique ID tag.
$(".locn_option_select").click(function (locnevent) { // Set up click action on the option entries locnevent.preventDefault;[code].......
I'm new to Javascript, and having an issue with getInterval. For my programming languages class we have to create a simulation of waves breaking on a shore from above. I've decided to use a canvas object and Javascript for this animation, but am getting stuck on refreshing the frames.
Here is the code I have so far: var shoreline = new Array(); var waves = new Array(); var canWidth = 600; var canHeight = 400; var waveNum = 0; var count = 0; .....
As you can see, the idea is that each 5-pixel wide node of the shore and wave are stored in arrays so that the position of each node can differ. The wave() function initializes all the required data, and then calls setInterval on update(). The function update() draws the water, shore, and wave, and then updates the wave position node-by-node. Ideally, setInterval would cause this to happen repeatedly, so that the wave would appear to move closer to the shore every 1000ms.
However, this is not the case. It appears as though setInterval is working for one pass of update(), but fails after the first pass. You can tell that this is happening because the wave appears at its starting position, but does not continue to move. I read somewhere that setInterval can be broken by one-time functions, but I'm not sure. If you'd like to see what it's currently doing in a browser, I've hosted it here [URL]. Once I've got this animating properly I can continue my project, but I've hit a roadblock.
The main one I find is to use translate to move the canvas around, which just seems odd to me. I don't even fully understand how it works. But the one I was looking at used clearRect. In examples given looked as though it had to redraw the canvas every frame. I'm just mucking around with a simple poker game, figured I'd have the table in one layer and anything that moves on a top layer? By doing that I could only clear each card as it moved around...yes?
My application is based on client-server architecture. It is a E-Learning Application. I am using ruby on rails server, javascript,canvas,SVG element. I have an idea of an interface to allow the teacher to build any type of animation for students using Cake javascript API. I wanted to save the animation build using the canvas element on the rails server either in database or as a file. Later I have to use that animation to be played to students. Any way to do it on any language except proprietary languages like flash but from that language communication can be done with rails server.
Explanation: element "loodgieters" is a menu button that should change on mouseover. It doesn't in FF, it does in IE. Secondly, when you "mousover" the image, it should change the backgroundcolor of a second element (foto1). Element 'foto1' is a table cell. In return, when you mouse-over this table cell, the image element 'loodgieters' should change as well. So it's a two-way thing.
The code for the table cell is: <td height="189" id="foto1" bgcolor="#008ac9" valign="top" onmouseover="style.backgroundColor='#392d63'; loodgieters.src='/core/loodgieters_aan.png';" onmouseout="style.backgroundColor='#008ac9'; loodgieters.src='/core/loodgieters_uit.png';" style="cursor:pointer;" onclick="document.location='/pages/loodgieters.php';"> <img alt="Loodgieters" title="Loodgieters" src="/core/loodgieters.png" style="border:0; margin-left:auto; margin-right:auto; margin-top:10px; display: block;" /></td>
It all works as I expected in IE, Safari and Chrome, but it does not in Firefox. The whole page validates as XHTML 1.0 Transitional. What am I overlooking here?
I am new to jquery, and love it so far, but I am more of a designer, not a developer. I am learning jquery to enhance my sites, and I am having a problem figuring out buttons.
I have them working in firefox and safari, but in IE links do not work.
I have make a javascript program that uses HTML canvas and I can't get it to work in Internet Explorer. I tried using excanvas and jqcanvas but had trouble getting them to work.
I'm building a simple corporate site (temp on my server) for a friend's company and am having an issue with an animation I have implemented. everything has worked fine for me (mac, firefox and safari) but my friend sent me a couple screenshots of the animation freezing on his computer (safari) when it is only halfway complete. the two examples are:
[Code]...
the code seems perfectly fine to me, and I am having no problem with any of it.. does anybody have an idea of what might be causing this? or is nobody seeing the animation freezing?
I've been having problems with some simple(?) lines of code...
What I'm trying to do is to simply turn the canvas black and show a small gif on it. Upon executing initCnv(), the canvas turns black as it should, while the sprite image doesn't show up at all. I can't figure out what's going on, I scoured the code for syntax errors, even tried other image formats but to no avail. Image paths are also correct.
I am having problems getting the webshims plugin canvas polyfill to work. I get the following error in IE9 using IE7 mode: SCRIPT438: Object doesn't support property or method 'fillRect' problem.html, line 21 character 7 when I try to run this code:
I have tried several things, using several Javascript books, but can't get this to work in Netscape (latest version) and Firefox (latest v.). It works in MIE and Opera fine. A box (defined by a css layer) is supposed to pop out to the right when the corresponding box on the far left is moused over. The first function defines a layer id to the next function which pops out the box. After debugging in Venkman, it looks like the first function cannot define the layer id properly to the second function, which actually slides the box (layer) to the right.
I thought that the getElementById function was supposed to work for Firefox, but I must be using it wrong(???)
To see how it's supposed to work, view the following page in MIE or Opera:
Found a simple script to show and hide layers. Using this to have an ad with 60px height and onMouseOver 350px
function adtechhideElement(elmID) { for (i = 0; i < document.all.tags(elmID).length; i++) { obj = document.all.tags(elmID)[i]; if (! obj || ! obj.offsetParent) continue; obj.style.visibility = "hidden"; } } function adtechshowElement(elmID) { for (i = 0; i < document.all.tags(elmID).length; i++) { obj = document.all.tags(elmID)[i]; if (! obj || ! obj.offsetParent) continue; obj.style.visibility = ""; } } but the thing is this doesn't work in firefox/mozilla.
Where should I alter this to get it working in firefox?
The very simple code (below) works fine in Safari (and Chrome, Firefox etc.), but it doesn't work in Mobile Safari. Why?(You can find a working example at: http:[url]....)
Code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head>[code]......
Liferay 4.4.2 + jQuery 1.7.1Lib loads correctly (I use noConflict method because in Liferay there is 1.1.4 jQuery). I check for example $('someDiv').hide() and this works correctly. But .bind() method doesn't work.
I'm trying to create a control which when the mouse button gets pressed on one div an absolute positioned div pops up in place of the cursor. From there the cursor should interact with the dialog before the mouse button is released. In other words one element will catch onmousedown, display the popup, and the popup element will catch onmouseup. This works fine in IE as the popup automatically accepts following events, but my problem is in Firefox.
In Firefox everything behind the popup still receive events even though they can't be seen (hidden by the popup). I have to release the mouse button and then click on the popup again before it accepts the onmouseup event.
I also used a different cursor on the popup to see if Firefox recognized it was there at all. Still the cursor doesn't change until I release themouse button and move the cursor across the popup element.
I've tried focus/blur, timeout delays, hiding the first element (the one which receives onmousedown) but nothing works.
The only thing that works is hiding the entire body and then using setTimeout to show the entire body again 1ms later. Obviously though that is very ugly.
I have a submenu that expands over the adobe pdf reader addon/plugin. See this basic exampleI need to make it so that the menu stays above the plugin. Currently, parts of it are cut off.After some research I came across the idea of placing an iframe below the submenu to force it to stay on top. As the topic suggests this is called an "iframe shim" and I have been some what successful. See this basic example one submenu is shown on page load because i plan to take screen shots of it) The only problem is that it doesn't work in opera. I have tested it in chrome and firefox and they are working. I can't test it in ie8 at the moment because the plugin for some reason just won't work on the page, however i have tested the approach before and it did work in ie
I want to delete some lines on the canvas that i have created in HTML5 (with the <canvas> tag). I know one solution and that is using clearRect() (give this function the HEIGHT and WIDTH of the canvas and you clears the whole canvas.).But i don't want to clear the whole canvas, i only want to delete a few lines made by the function lineTo().