Advanced Search

Blog Comments

  1. Beverleyh's Avatar
    My IE10 update rolled through a few days ago so I've been in a similar boat - nothing too twitchy, but a few conditional IE stylesheet tweaks that obviously now don't render.

    Easily fixed with some media queries plonked right back into my main stylesheets though...

    Code:
    @media screen and (min-width:0\0) {  /* IE9 and IE10 */  
    body { background:red; }
    }
  2. molendijk's Avatar
    Yes, you're right about the javascript. Thanks.
    As for the IE conditional comments, the problem I encountered was that with IE10, lines like
    Code:
    <!--[if IE]>
    <script>
    alert('hello')
    </script>
    <![endif]-->
    and
    Code:
    <!--
    <script>
    alert('hello')
    </script>
    -->
    are treated in exactly the same way (same result: no alert) unless we add a meta tag like:
    Code:
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">
    which we don't want in many cases.
  3. jscheuer1's Avatar
    There's a slightly more efficient (since IE 6 all IE versions are whole numbers, so we need not worry about the \.\d+ part any longer) and more standard (using RegExp.$# has been deprecated) way to test IE version in javascript:

    Code:
    var ievesion = /MSIE (\d+)/.exec(navigator.userAgent);
    ieversion = ieversion? ieversion[1] : false;
    However, since IE 10 is for the most part as compliant as any other modern browser, IE conditional comments can still be used in most cases. IE 10 will take the same path as - say, Chrome or the Fox.
  4. ajfmrf's Avatar
    Thanks Arie,I hope I can learn more about this location.search
  5. molendijk's Avatar
    Hi Bud,
    You can do with it what's explained in the demo. If I remember well, you asked a question (a couple of weeks ago) about how to load pages in an iframe. I proposed a script that did what you wanted and that was 'boomark-friendly' at the same time. With this new script, you can do the same thing and lots of other things. Here's a simple example:
    Code:
    <!doctype html>
    <html >
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    
    <title></title>
    
    <style>
    body {font-family: verdana; font-size: 12px; background: #dedede}
    </style>
    
    </head>
    
    <body>
    
    <div style="position: relative; text-align: center">
    <a href="javascript: void(0)" onclick="location.search='http://www.dynamicdrive.com'">DynamicDrive</a>
    <a href="javascript: void(0)" onclick="location.search='http://www.webkit.org'">Webkit</a>
    <a href="javascript: void(0)" onclick="location.search='http://edition.cnn.com/'">CNN</a>
    
    
    </div>
    
    <iframe name="ifr" style="position:absolute; left:10%; top: 10%; width:80%; height: 80%; background: white" src="http://www.dynamicdrive.com"></iframe>
    
    
    <script>
    var data=location.search;
    if(data) 
    {
    data = location.search.substring(1); // needed to remove the '?'
    ifr.location.replace(data)
    data=''
    }
    </script>
    
    </body>
    
    </html>
    But, as I said, they are other possibilities offered by the script.
    Arie.
  6. ajfmrf's Avatar
    I am trying to grasp what you are saying Arie.

    How would that script be used -to search a web page? a site? another page?
  7. traq's Avatar
    Quote Originally Posted by molendijk
    if the dialog could be used to trigger some code that 'overrides' the browser's normal behavior i.e. that tells Safari, in this particular case, to abandon its normal behavior ... But creating such code seems impossible, for reasos of security.[sic]
    I hadn't checked if it was possible or not. I'd imagined it would be, but... ah well. c'est la vie.
  8. molendijk's Avatar
    Hello traq, thanks for the response.
    The general idea is that, as soon as we (as developers) know that a browser will refuse to perform a 'legal' action (such as opening a popup or a new tab after a click on a link), we write if (typeof(some_action)=='undefined'){alert("bla")}, where bla is the info needed by the user to make things (some_action) work 'as they should'.
    In our case, using a dialog box rather than an alert would only be an improvement if the dialog could be used to trigger some code that 'overrides' the browser's normal behavior i.e. that tells Safari, in this particular case, to abandon its normal behavior in favor of opening a popup or a new tab. But creating such code seems impossible, for reasos of security.
    I should add that there's no real need to anticipate on what the browser may do or refuse, since for every event we want to be accomplished we can add if (typeof(some_action)=='undefined'){alert("bla")} to our code. Most of the time, this line will be redundant (= no alert, because the action will not be classified as 'undefined' by the browser), but it never hurts.
    Arie.
  9. traq's Avatar
    Quote Originally Posted by molendijk
    Sometimes, browsers / popup blockers make mistakes and block windows or tabs although they are explicitly requested by the user.
    I think the underlying problem is that it's impossible for the browser to tell what the user's intention really was. Browsers are forced to speculate on the basis of known behaviors (both legitimate uses and scams/dishonest uses).

    -------------------

    I wonder if you could use a confirmation dialog instead of an alert, and simply ask if the user wants to open the popup...? That ought to be considered an "explicit request," right? And it would avoid the need to fiddle with settings and reload the page.
  10. molendijk's Avatar
    HERE's an elaborated version of some parts of this thread.
    Arie.
  11. molendijk's Avatar
    The demo link doesn't work anymore. Here's a new one:
    http://mesdomaines.nu/eendracht/Navi...ct3/page1.html
    ===
    Arie.
  12. molendijk's Avatar
    John, very useful, thanks!
    Arie.
  13. jscheuer1's Avatar
    I think it's invalid in some DOCTYPES, but works just fine in all of them:
    Code:
    <a href="http://www.google.com/" target="_new">New Google</a>
    BTW, even though you're using javascript: void(0) for the href, you should still return false:

    Code:
    <a href="javascript: void(0)" onclick="window.open('','_new').location.href='http://google.com'; return false;">open Google in new tab</a>
    to prevent partial unloading of the page in some browsers. Some (and not just IE) will stop processing javascript or parts of some javascript. Some will stop processing animated gif. There could be other problems. By having a link that doesn't leave the page but that doesn't return false, the browser is allowed to begin the unload process.

    Personally I prefer letting people know (see it in the status bar for browsers that do that) the link by putting it in the href:

    Code:
    <a href="http://www.google.com/" onclick="window.open('','_new').location.href=this.href; return false;">New Google</a>
    which allows you to use this.href in the onclick event, which has implications for making this a portable/assignable function/event.

    You could alternatively use another tag:

    Code:
    <span title="http://www.google.com/" onclick="window.open('','_new').location.href=this.title;">New Google</span>
    This completely eliminates any concern about the page partially unloading. The tag may be styled to look and act like a link. (cursor:pointer;text-decoration:underline; etc.)

    This also appears to work, at least in Firefox:

    Code:
    <span title="http://www.google.com/" onclick="window.open(this.title, '_new');">New Google</span>
    which tends to indicate that the a tag itself is part of the original problem you mention.
  14. webmasterws's Avatar
    thanks alot very useful player.
  15. Sarutobi sensei's Avatar
    It working for me..thax
  16. molendijk's Avatar
    Quote Originally Posted by mapleleaf
    In reading the article on iframe pixel precision, the light came on and it worked for all browser type that I am testing the web site with; namely not using the viewport variables BUT using 100% for the width and the height. WOW, alll browsers work.
    I'm glad this helped you out.
    ===
    Tot ziens, Arie.
  17. mapleleaf's Avatar
    This is my first post here in the forums and will not be my last!

    This is a great article, iframe pixel precision and it solved an issue that I had.

    In the developing of a web site and using dhtmlwindow, I wanted to use a variable for the viewport of the browsers(I am testing the web site with IE8, FF3.6.8/4.0b4,Opera 10.61, chrome 7.0, avant and Maxthon), it did not work when passing the viewport variables to the function.
    Well it did work on some but not all browser. This had me stumped and I knew the solution is a simple one; too often the simple solutions escape.
    Every page on the web site is W3C validated for xhtml1.1, CSS3, WCAGv2 AAA and section 508 BUT this really stumped me.

    I decided to register at DD having gone a multiple number of times over the years to DD for reference etc.

    In reading the article on iframe pixel precision, the light came on and it worked for all browser type that I am testing the web site with; namely not using the viewport variables BUT using 100% for the width and the height. WOW, alll browsers work.

    Here is how I use the dhtmlwindow function:

    dhtmlwindow.open("ajaxbox", "iframe", ""+a+"", ""+b+"", "width=100%,height=100%,resize=0");

    which btw does also work at the resolutions of 1024x768 and 1280x1024 that I am optimizing the web site for.

    Bedankt

    btw, I was on the beta team in the development of JavaScript by Netscape 1995-1998; becmae their JavaScript Developer's Champion in 1997; moderator for the developer and user javascriot forums AND had the 1st FAQ on JavaScript on the internet on Netscape's web site in 1997.

    tot ziens
  18. molendijk's Avatar
    It's better to post your question here.
    ===
    Arie.
  19. molendijk's Avatar
    No, it's not: this thread is not about the embeddable player, but about the chromeless player.
    ===
    Arie.
  20. molendijk's Avatar
    Quote Originally Posted by jscheuer1
    I was just using this code in an actual job. Not the chopped stuff, but the valid cross browser tag. I discovered that these highlighted parts don't really seem to be required:
    Code:
    <!--[if IE]>
    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" style="position:absolute;left:20%; top:20%; height:80%;width:80%">
    <![endif]-->
    <!--[if !IE]><!-->
    <object type="application/x-shockwave-flash" style="position:absolute;left:20%; top:20%; height:80%;width:80%" data="http://swf.tubechop.com/tubechop.swf?vurl=rw1j0NsIIeE&amp;start=164&amp;end=199&amp;cid=28051" >
    <!--<![endif]-->
    <param name="movie" value="http://swf.tubechop.com/tubechop.swf?vurl=rw1j0NsIIeE&amp;start=164&amp;end=199&amp;cid=28051" >
    <param name="allowFullScreen" value="true" >
    <param name="wmode" value="transparent" >
    </object>
    Thanks! You seem to be right there!
    Quote Originally Posted by jscheuer1
    Oh, and another thing, I think this is a TOS violation.
    But then the whole service provided by http://tubechop.com is a violation of the TouTube TOS!(?).
    ===
    Arie.
Page 1 of 3 123 LastLast