"really good script"
well... my friend is pretty good with this stuff, and does some of it professionally... so... I'd assume it works well. From what I've seen on various systems, it does.
Anyway... it's based on redirect, but you can use whatever you want, if you're into coding javascript.
Here's the page as is... it has no content on it... just a javascript that redirects to noflash/flash pages. That's it.
You could change those actions, or make it just that if no flash, it redirects. Or whatever.
See if this helps.
It's pretty complex, but you don't really need to change much of it if you don't want to.
Only downside... sometimes the back button is weird... but seems to work ok generally.
For starters, just change the links at the bottom.
HTML Code:
<html>
<head>
<META NAME="Flash Detect page">
<META NAME="KeyWords" CONTENT="">
<script language="Javascript">
<!-- hide script
/*Plugin Detector()*/
// this is where we write out the VBScript for MSIE Windows
var WM_startTagFix = '</';
var msie_windows = 0;
if ((navigator.userAgent.indexOf('MSIE') != -1) && (navigator.userAgent.indexOf('Win') != -1)){
msie_windows = 1;
document.writeln('<script language="VBscript">');
document.writeln('\'This will scan for plugins for all versions of Internet Explorer that have a VBscript engine version 2 or greater.');
document.writeln('\'This includes all versions of IE4 and beyond and some versions of IE 3.');
document.writeln('Dim WM_detect_through_vb');
document.writeln('WM_detect_through_vb = 0');
document.writeln('If ScriptEngineMajorVersion >= 2 then');
document.writeln(' WM_detect_through_vb = 1');
document.writeln('End If');
document.writeln('Function WM_activeXDetect(activeXname)');
document.writeln(' on error resume next');
document.writeln(' If ScriptEngineMajorVersion >= 2 then');
document.writeln(' WM_activeXDetect = False');
document.writeln(' WM_activeXDetect = IsObject(CreateObject(activeXname))');
document.writeln(' If (err) then');
document.writeln(' WM_activeXDetect = False');
document.writeln(' End If');
document.writeln(' Else');
document.writeln(' WM_activeXDetect = False');
document.writeln(' End If');
document.writeln('End Function');
document.writeln(WM_startTagFix+'script>');
}
function WM_pluginDetect(plugindescription, pluginxtension, pluginmime, activeXname){
var i,plugin_undetectable=0,detected=0, daPlugin=new Object();
if (msie_windows && WM_detect_through_vb){
plugin_undetectable = 0;
}//if
else{
plugin_undetectable = 1;
}//else
if(navigator.plugins) {
numPlugins = navigator.plugins.length;
if (numPlugins > 1) {
if (navigator.mimeTypes && navigator.mimeTypes[pluginmime] && navigator.mimeTypes[pluginmime].enabledPlugin && (navigator.mimeTypes[pluginmime].suffixes.indexOf(pluginxtension) != -1)) {
if ((navigator.appName == 'Netscape') && (navigator.appVersion.indexOf('4.0') != -1)) { // stupid, stupid Netscape can't handle the references to navigator.plugins by number, sooo...
for(i in navigator.plugins) {
if ((navigator.plugins[i].description.indexOf(plugindescription) != -1) || (i.indexOf(plugindescription) != -1)) { // some versions of quicktime have no description. feh!
detected=1;
break;
}//if
}//for
}//if
else{
for (i = 0; i < numPlugins; i++) {
daPlugin = navigator.plugins[i];
if ((daPlugin.description.indexOf(plugindescription) != -1) || (daPlugin.name.indexOf(plugindescription) != -1)) {
detected=1;
break;
}//if
}//for
}//else
if (navigator.mimeTypes[pluginmime] == null) {
detected = 0;
}//if
}//if
return detected;
}//if
else if((msie_windows == 1) && !plugin_undetectable){
return WM_activeXDetect(activeXname);
}//else if
else {
return 0;
}//else
}//if
else{
return 0;
}//else
}//WM_pluginDetect()
function WM_easyDetect(whichPlugin) {
var isItThere = 0;
if( (whichPlugin == 'flash') || (whichPlugin == 'Flash') ) {
isItThere = WM_pluginDetect('Flash', 'swf', 'application/x-shockwave-flash', 'ShockwaveFlash.ShockwaveFlash');
}//if
else if( (whichPlugin == 'director') || (whichPlugin == 'Director') ) {
isItThere = WM_pluginDetect('Shockwave', 'dcr', 'application/x-director', 'SWCtl.SWCtl.1');
}//else if
else if( (whichPlugin == 'quicktime') || (whichPlugin == 'Quicktime') || (whichPlugin == 'QuickTime') ) {
isItThere = WM_pluginDetect('QuickTime', 'mov', 'video/quicktime', '');
}//else if
else if( (whichPlugin == 'realaudio') || (whichPlugin == 'Realaudio') || (whichPlugin == 'RealAudio') ) {
isItThere = (WM_pluginDetect('RealPlayer', 'rpm', 'audio/x-pn-realaudio-plugin', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)')) || (WM_pluginDetect('RealPlayer', 'rpm', 'audio/x-pn-realaudio-plugin','rmocx.RealPlayer G2 Control')) || (WM_pluginDetect('RealPlayer', 'rpm', 'audio/x-pn-realaudio-plugin','RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)')) || (WM_pluginDetect('RealPlayer', 'rpm', 'audio/x-pn-realaudio-plugin','RealVideo.RealVideo(tm) ActiveX Control (32-bit)'))
}//else if
else {
alert('You need to tell me which plug-in to look for, like so:\n\n' + ' WM_easyDetect(\'flash\')\n\n' + ' WM_easyDetect(\'director\')\n\n' + ' WM_easyDetect(\'quicktime\')\n\n' + ' WM_easyDetect(\'realaudio\')');
}//else
return isItThere;
}//WM_easyDetect()
// end hiding of script -->
</script>
</head>
<body bgcolor="#FFFFFF" text="#FFFFFF">
<FONT SIZE="2">Detecting Flash Plug-in, please wait</FONT>
<script language="JavaScript">
if (WM_easyDetect('Flash') == true || WM_easyDetect('flash') == 1)
//THIS IS THE SHOCKWAVE URL
document.location.href="***FLASH***.html"
else
//THIS IS THE SHOCKWAVELESS URL
document.location.href="***NOFLASH***.html"
</script>
</td>
</tr>
</table>
</body>
</html>
Bookmarks