====== bubbleBurst - Rank/Select Top n with Animation ======
The **bubbleBurst** function converts a Qualtrics multi-select, multiple choice question into an animated ranking or select top //n// question. Functionality includes:
* Supports text or image choices
* Automatically detects Rank or Top //n// mode based on "allow text" configuration
* Specify minimum or minimum/maximum number of items to be ranked/selected
* Automatically adjusts maximum based on number of displayed choices
* Optional auto advance when last item ranked/selected
* Optional auto ranking/selection of last item when only one item remains
* Reset option
* Supports Exclusive and 'No more' choices
* Customize animation settings
* Customize status text
Here is a demo:\\
{{ ::bubbleBurst_demo.mp4?600 |bubbleBurst Demo}}
This function is available for a reasonable fee. Contact **[[https://community.qualtrics.com/XMcommunity/messages/add/TomG|TomG]]** on the Qualtrics Community to learn more.
===== Set-up Instructions =====
==== Add Function To Survey ====
Add the bubbleBurst function to the survey header to make it available to any question in the survey. Go to Look & Feel -> General -> Header edit -> {{::icon_source.jpg?20|}} and paste the provided bubbleBurst function JS:
Alternatively, paste the bubbleBurst function JS into a question's JS __outside__ the existing Qualtrics functions to make it available to questions on the page.
==== JavaScript Function Call ====
Add JS to call the bubbleBurst function to apply it to the multiple choice question as follows:
Qualtrics.SurveyEngine.addOnload(function() {
bubbleBurst(this);
});
To override the default options, specify the desired **[[bubbleBurst#Options|options]]** in the second function argument as an object. For example:
Qualtrics.SurveyEngine.addOnload(function() {
bubbleBurst(this,{statusDone:"Done!",image:true});
});
==== Question HTML ====
At the end the question add a div with class "status" to display the status text followed by style to hide page while it loads.
Please rank the three most important items in this list below by selecting in the order of most important to least important.
==== Ranking ====
To enable ranking turn on "Allow Text" for each choice in the multiple choice question. If "Allow Text" is not enabled for __all__ choices, the bubbleBurst function is in Top N (where N is max) mode.
==== 'No More' choice ====
A 'no more' choice is a choice used to by the respondent to end the pick/rank process once the minimum number of items have been selected. It is only visible once the minimum number of choices have been selected. It is similar to an exclusive choice, except it is only exclusive among the remaining choices instead of all choices. To create a 'no more' choice, use html like the following:
None of these are important
===== Options =====
==== autoNext ====
**autoNext** turns on automatic advance to next page when last item is ranked/selected.
Default: true (on)
==== autoNextExclusive ====
**autoNextExclusive** turns on automatic advance to next page when an exclusive or **[[bubbleBurst#no_more_choice|no more]]** choice is selected.
Default: true (on)
==== autoSelectLast ====
**autoSelectLast** turns on automatic selection/ranking of the last choice if there is only one choice remaining.
Default: true (on)
==== explode ====
**explode** apply explode animation effect to text choices when selected. When explode is false text choices fade out when selected.
Default: true
==== fontSize ====
**fontSize** is an array containing start and stop font sizes for explode animation effect.
Default: %%["1.5em", "0.4em"]%%
==== image ====
**image** turns on shrinking image animation for image choices.
Default: false
==== max ====
**max** is the maximum number of items that should be ranked. The bubbleBurst function will automatically adjust max to accommodate exclusive choices and choice display logic. If max=0, max is set to the number of displayed choices excluding exclusive choices.
Default: 0
==== min ====
**min** is the minimum number of items that should be ranked when Force Response is turned on. The next button id disabled until the min number of choices have been selected. The bubbleBurst function will automatically adjust min to accommodate exclusive choices, no more choices, and choice display logic. If min=0, min is set to the number of displayed choices excluding exclusive choices. For a true min of zero turn off Force Response.
Default: 0
==== opacity ====
**opacity** is an array containing the start and stop opacity for text or image animations.
default: [1, 0.8]
==== ordinalList ====
**ordinalList** is an array that specifies the ordinal list text to replace the [ordinal] token in the status update message when items are ranked/selected.
Default: %%["", "2nd", "3rd", "4th", "5th"]%%
==== reset ====
**reset** turns on reset button display and functionality.
Default: true
==== resetText ====
**resetText** specifies the reset button text
Default: Reset
==== statusDone ====
**statusDone** specifies the status text to display when the last (max) item has been ranked/selected. [ordinal], [count], [min], and [max] are valid tokens that are dynamically updated.
Default: %%"Done! ([count]/[max])"%%
==== statusUpdate ====
**statusUpdate** specifies the status update text before the last item is selected/ranked. [ordinal], [count], [min], and [max] are valid tokens that are dynamically updated.
Default: %%"Select the [ordinal] most important item. ([count]/[max])"%%
==== timeout ====
**timeout** is the length of animation in milliseconds.
Default: 1200
====== Qualtrics Wiki ======
[[start|Qualtrics Wiki]]