Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Implicit Association Test cannot shows the picture

  • RitaShen
  • RitaShen's Avatar Topic Author
  • Offline
  • Premium Member
  • Premium Member
More
3 years 6 months ago #206147 by RitaShen
hi there,


my LimeSurvey version is 3.23.4
and recently, I found that it cannot shows the picture in the Implicit Association Test

I've to follow this manual.limesurvey.org/Workarounds:_Manip...ation_Test_.28IAT.29 version 2.50, it was work before, but now, it cannot appear the picture,

this is my survey file:

File Attachment:

File Name: limesurvey...6114.lss
File Size:287 KB

I’m not familiar with using this, could someone please lend me a hand?

many thanks
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 6 months ago #206158 by tpartner
That workaround was never updated for 3.x. There is a custom question theme here - github.com/tpartner/LimeSurvey-Implicit-Association-Test

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
The following user(s) said Thank You: DenisChenu
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 6 months ago #206169 by Joffm
Hi,

(of course - the boats)

This script works for me in version 3.x. (3.22.28)
Code:
<script>
// A plugin to insert an IAT interface
function implicitAssociation(el, showAnswers) {
 
  $(el).each(function() {
 
    var thisQuestion = $(this);
    var thisQuestionHelp = $('div.ls-questionhelp', thisQuestion);
    var thisQuestionAnswers = $('table.subquestion-list', thisQuestion).parent();
    var startTime = '';
    var endTime = '';  
    var agent = navigator.userAgent.toLowerCase();
    var mobile = false;
    if( /android|webos|iphone|ipad|ipod|blackberry/i.test(navigator.userAgent) ) { // Mobile devices
      mobile = true;
    }
 
    // Some classes
    $(thisQuestion).addClass('iat-question');
    $('tr.subquestion-list', thisQuestion).addClass('unanswered');
 
    // Hide the question help element
    $(thisQuestionHelp).hide();
    $(thisQuestionHelp).closest('.question-help-container').hide();
 
    // Hide the answers
    if(showAnswers != true) {
      $('table.subquestion-list', thisQuestion).hide();
    }
 
    // Insert IAT display
    var iatTexts = $(thisQuestionHelp).text().split('||');
    var iatDisplayHTML = '<div class="iatWrapper">\
                <div class="iatLeftLabel">'+iatTexts[0]+'</div>\
                <div class="iatRightLabel">'+iatTexts[1]+'</div>\
                <div class="iatWord"></div>\
                <div class="iatInstructions">'+iatTexts[2]+'</div>\
              </div>\
              <div class="iatMobileButtonWrapper">\
                <div class="iatButton iatLeftButton">E</div>\
                <div class="iatButton iatRightButton">I</div>\
                <div style="width:100%; clear:both;"></div>\
              </div>';
    $(thisQuestionAnswers).prepend(iatDisplayHTML);
 
    // Show a word
    function iatShowWord() {
      $('div.iatWord', thisQuestion).html($('tr.subquestion-list.unanswered:first .answertext', thisQuestion).html());
      startTime = new Date();
 
      $(document).bind('keypress.iatKeypress', function(e) {
        if(e.which == 101 || e.which == 105) {
          var thisRow = $('tr.subquestion-list.unanswered:eq(0)', thisQuestion);
          $(thisRow).removeClass('unanswered');
          endTime = new Date();
          $('input[type="text"]:eq(1)', thisRow).val(endTime.valueOf() - startTime.valueOf());
          if(e.which == 101) {
            $('input[type="text"]:eq(0)', thisRow).val('E');
          }
          else {
            $('input[type="text"]:eq(0)', thisRow).val('I');
          }
          $(document).unbind('keypress.iatKeypress');
          if($('tr.subquestion-list.unanswered', thisQuestion).length > 0) {
            iatShowWord();
          }
          else {
            $('.iatLeftLabel, .iatWord, .iatRightLabel, .iatInstructions', thisQuestion).fadeOut('slow', function() {
              $('div.iatWord', thisQuestion).text('done');
              $('.iatWord', thisQuestion).addClass('done').fadeIn('slow');
            });
          }
        }
      });
    }
    function iatShowWordMobile() {
      $('div.iatWord', thisQuestion).text($('tr.subquestion-list.unanswered:first .answertext', thisQuestion).text());
      startTime = new Date();
 
      $('.iatButton', thisQuestion).bind('click.iatButtonClick', function(e) {
        var thisRow = $('tr.subquestion-list.unanswered:eq(0)', thisQuestion);
        $(thisRow).removeClass('unanswered');
        endTime = new Date();
        $('input[type="text"]:eq(1)', thisRow).val(endTime.valueOf() - startTime.valueOf());
        $('input[type="text"]:eq(0)', thisRow).val($(this).text());
        $('.iatButton', thisQuestion).unbind('click.iatButtonClick');
        if($('tr.subquestion-list.unanswered', thisQuestion).length > 0) {
          iatShowWordMobile();
        }
        else {
          $('.iatLeftLabel, .iatWord, .iatRightLabel, .iatInstructions, .iatMobileButtonWrapper', thisQuestion).fadeOut('slow', function() {
            $('div.iatWord', thisQuestion).text(iatTexts[3]);
            $('.iatWord', thisQuestion).addClass('done').fadeIn('slow');
          });
        }
      });
    }
 
    // Start the IAT display
    if(mobile == true) { // Mobile devices
      $('.iatMobileButtonWrapper', thisQuestion).show();
      $('.iatButton', thisQuestion).bind('click.iatStartMobile', function(e) {
        $('.iatButton', thisQuestion).unbind('click.iatStartMobile');
        iatShowWordMobile();
      });
    }
    else {
      $(document).bind('keypress.iatStart', function(e) { // Non-mobile devices
        if(e.which == 101 || e.which == 105) {
          $(document).unbind('keypress.iatStart');
          iatShowWord();
        }
      });
    }
  });
}
 
 
 $(document).ready(function() {
    // Apply the IAT plugin to this question
    implicitAssociation('#question{QID}');
  });  
</script>
<style type="text/css">/* IAT questions */
 
.iatWrapper {
  position: relative;
  width: 100%;
  max-width: 600px;
  height: 300px;
  margin: 0 auto;
  color: #D0DBE5;
  background-color: #2C3E50;
  font-size: 21px;
}
 
.iatLeftLabel {
  float: left;
  padding: 10px;
}
 
.iatRightLabel {
  float: right;
  padding: 10px;
}
 
.iatWord {
  position: absolute;
  width: 100%;
  top: 35%;
  text-align: center;
  font-size: 36px;
  color: #C4D1DE;
}
 
.iatWord.done {
  color: #C4D1DE;
}
 
.iatInstructions {
  position: absolute;
  width: 100%;
  bottom: 0px;
  padding-bottom: 10px;
  text-align: center;
}
 
.iatMobileButtonWrapper {
  display: none;
  position: relative;
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  font-size: 36px;
}
 
.iatButton {
  float: left;
  margin: 20px;
  width: 100px;
  padding: 2px 0 5px 0;
  border: 5px solid #233140;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -khtml-border-radius: 10px;
  border-radius: 10px;
  text-align: center;
  line-height: normal;
  cursor: pointer;
}
 
.iatLeftButton {
  float: left;
}
 
.iatRightButton {
  float: right;
}
</style>

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: RitaShen
The topic has been locked.
  • RitaShen
  • RitaShen's Avatar Topic Author
  • Offline
  • Premium Member
  • Premium Member
More
3 years 6 months ago - 3 years 6 months ago #206334 by RitaShen
Thanks Joffrm,I have another question,can we do this in LimeSurvey? change the text to the picture in the IAT Question (the yellow frame)


File Attachment:

File Name: limesurvey...5289.lss
File Size:18 KB
Last edit: 3 years 6 months ago by RitaShen.
The topic has been locked.
  • RitaShen
  • RitaShen's Avatar Topic Author
  • Offline
  • Premium Member
  • Premium Member
More
3 years 6 months ago #206335 by RitaShen
dear tpartner,

because I'm using LimeSurvey Pro, ( I do not have own host), so I cannot use custom question theme - github.com/tpartner/LimeSurvey-Implicit-Association-Test
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 6 months ago #206342 by Joffm
Hi, Rita,
you see, this script is - of course - developed by tpartner.

I am able to read javascript, but not more.
So it is always some kind of trial and error

Well, I just tried to enter some pictures here

and because now it is not plain text I looked for something that uses this entry.

If you change this line
// Insert IAT display
var iatTexts = $(thisQuestionHelp).text().split('||');


to
var iatTexts = $(thisQuestionHelp).html().split('||');

You get


Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: RitaShen
The topic has been locked.
  • RitaShen
  • RitaShen's Avatar Topic Author
  • Offline
  • Premium Member
  • Premium Member
More
3 years 6 months ago #206343 by RitaShen
hi Joffm,

tanks for help
The topic has been locked.

Lime-years ahead

Online-surveys for every purse and purpose