Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Retina displays - 404 error when there is no @2x image #231

Open
pixel-industry opened this issue Feb 29, 2016 · 14 comments
Open

Retina displays - 404 error when there is no @2x image #231

pixel-industry opened this issue Feb 29, 2016 · 14 comments
Labels

Comments

@pixel-industry
Copy link

Hi,

we are facing a problem with retina.js on retina screens. We have premium template that has no retina images, but we use the script because of our buyers, so they don't have to include it by themselves.

The problem is that template doesn't have retina images, only regular ones. On MAc, retina display, the normal image apears, but script is generating 404 errors in console (as it can't find @2x images). Can you help us to solve this issue. I think that the script should just ignore if there is no retina images, not showing 404 error in console. Here is the link to template in question: http://www.pixel-industry.com/html/trucking/

Thank you in advance.

Kind regards,
Andrijana

@lucasff
Copy link

lucasff commented May 10, 2016

This is not a bug, it is a feature. On HTTP methods, even OPTIONS, HEAD or GET they obviously return 404 Not Found if the file is not found. Retina.js performs this to check if the file exists to be replaced... So, if you want, you can add data-no-retina to your images tags to avoid requesting the retina version of them. It is in the docs.

@djalexa
Copy link

djalexa commented May 11, 2016

Wouldn't it be easier to add a class for images that has hi-res copy and avoid tons of 404 errors that are really bad...

@clemensg
Copy link

I agree, but this breaks backwards-compatibility. Maybe for 2.0 @strues ?

@strues
Copy link
Owner

strues commented Jun 13, 2016

This is fixed in version 2.0 of Retina.js. We'll be releasing it officially in the next couple of days.

@strues strues added the legacy label Jun 21, 2016
@Smitty17
Copy link

Has this been fixed? I am using v2.1 and still get 404 errors in my console.

@kleuter
Copy link

kleuter commented Mar 31, 2017

The project seems to be abandoned

@strues
Copy link
Owner

strues commented Mar 31, 2017

Sorry guys I lost the ability to merge code after the company which put out RetinaJS went under.

@Smitty17
Copy link

Thanks for the update. I'll see if I can fix it. Cheers.

@strues
Copy link
Owner

strues commented Mar 31, 2017

No problem. I'll see what I can do about getting write permission

@terzom
Copy link

terzom commented Oct 15, 2018

Years later, is this code available for me to implement myself?

@steve231293
Copy link

steve231293 commented Feb 20, 2019

Hi there, do you guys have any good news about this problem?

@melesch
Copy link

melesch commented Dec 3, 2019

Hi, is there already a solution for this?

@melesch
Copy link

melesch commented Dec 3, 2019

Add this to the .htaccess

# This block of code needs to go above your Wordpress rules
<IfModule rewrite_module>
  #This is to short circuit non existent Retina image requests generated by retina.js
  # without this, the whole wordpress 404 stack will be executed which is very expensive
  # We simply redirect the request to the non @2x version of the file, if one exists, otherwise, send a 404 status
  RewriteEngine on
  RewriteBase /
  RewriteCond %{REQUEST_FILENAME} @2x\.[a-z]+$
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)@2x(.*)$ $1$2 [E=NORETINA:1]
  RewriteCond %{ENV:NORETINA} 1
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule .* - [L,R=404]
</IfModule>

@nouser33
Copy link

nouser33 commented Feb 9, 2024

do this // i.setAttribute("src", e),
in line 28

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests